পরিচয়
PHP-তে IntlChar::isprint() ফাংশনটি যাচাই করে একটি Unicode ক্যারেক্টার প্রিন্টেবল (printable) কিনা। প্রিন্টেবল ক্যারেক্টার হলো যেগুলোর দৃশ্যমান রূপ থাকে এবং প্রিন্ট করা যায় — অর্থাৎ গ্রাফিক্যাল ক্যারেক্টার (isgraph) প্লাস স্পেস (space) ক্যারেক্টার। কন্ট্রোল ক্যারেক্টার, ফরম্যাট ক্যারেক্টার, সারোগেট ইত্যাদি প্রিন্টেবল নয়।
সিনট্যাক্স
bool IntlChar::isprint($val)
প্যারামিটার
val − একটি পূর্ণসংখ্যা (Unicode কোডপয়েন্ট) বা UTF-8 এনকোডেড ক্যারেক্টার স্ট্রিং। আবশ্যক।
রিটার্ন ভ্যালু
ক্যারেক্টারটি প্রিন্টেবল হলে true, অন্যথায় false। বহু ক্যারেক্টার স্ট্রিং দিলে NULL বা অনির্দিষ্ট ফলাফল দিতে পারে।
উদাহরণ ১
<?php
var_dump(IntlChar::isprint("Kites"));
echo "<br>";
var_dump(IntlChar::isprint("&&"));
echo "<br>";
var_dump(IntlChar::isprint("K"));
?>
আউটপুট
bool(true) bool(true) bool(false)
ব্যাখ্যা: আউটপুটটি আশার বিপরীত। 'Kites' (৫ ক্যারেক্টার) → true? '&&' (২ ক্যারেক্টার) → true? 'K' (একক লেটার) → false? এটি সম্ভবত উদাহরণের ভুল। সঠিক আচরণ: একক প্রিন্টেবল ক্যারেক্টার → true, একক কন্ট্রোল/ফরম্যাট → false, বহু ক্যারেক্টার → NULL/false।
উদাহরণ ২
<?php
var_dump(IntlChar::isprint("1234"));
echo "<br>";
var_dump(IntlChar::isprint("1"));
echo "<br>";
var_dump(IntlChar::isprint("hvhj165e615"));
?>
আউটপুট
NULL bool(true) NULL
ব্যাখ্যা:
- '1234' — ৪ ক্যারেক্টার → NULL
- '1' — ডিজিট, প্রিন্টেবল → true
- 'hvhj165e615' — বহু ক্যারেক্টার → NULL