পরিচয়
PHP-তে IntlChar::isxdigit() ফাংশনটি যাচাই করে একটি Unicode ক্যারেক্টার হেক্সাডেসিমেল অঙ্ক (hexadecimal digit) কিনা। হেক্সাডেসিমেল অঙ্কগুলোর মধ্যে: দশমিক অঙ্ক (০-৯), ল্যাটিন অক্ষর a-f এবং A-F, এবং তাদের ফুলউইড (fullwidth) এবং অন্যান্য ভেরিয়েন্ট ফরম।
সিনট্যাক্স
bool IntlChar::isxdigit($val)
প্যারামিটার
val − একটি পূর্ণসংখ্যা (Unicode কোডপয়েন্ট) বা UTF-8 এনকোডেড ক্যারেক্টার স্ট্রিং।
রিটার্ন ভ্যালু
ক্যারেক্টারটি হেক্সাডেসিমেল অঙ্ক হলে true, অন্যথায় false। বহু ক্যারেক্টার স্ট্রিং দিলে NULL বা false রিটার্ন করতে পারে।
উদাহরণ ১
var_dump(IntlChar::isxdigit("10"));
echo "<br>";
var_dump(IntlChar::isxdigit("A"));
echo "<br>";
var_dump(IntlChar::isxdigit("a"));
echo "<br>";
আউটপুট
bool(true) NULL bool(true)
ব্যাখ্যা: '10' — দুটি ক্যারেক্টার ('1' এবং '0' উভয় হেক্স), কিন্তু ফাংশন একক ক্যারেক্টার আশা করে → আচরণ অনির্দিষ্ট (true দেখাচ্ছে, সম্ভবত প্রথম ক্যারেক্টার চেক করেছে)। 'A' — হেক্স অঙ্ক (১০) → true (আউটপুটে NULL দেখানো হয়েছে, সম্ভবত বাগ)। 'a' — হেক্স অঙ্ক (১০) → true।
উদাহরণ ২
<?php
var_dump(IntlChar::isxdigit("u{0041}"));
echo "<br>";
var_dump(IntlChar::isxdigit("k"));
echo "<br>";
var_dump(IntlChar::isxdigit("9"));
echo "<br>";
?>
আউটপুট
bool(true) bool(false) bool(true)
ব্যাখ্যা:
- U+0041 = 'A' — হেক্স অঙ্ক → true
- 'k' — হেক্স অঙ্ক নয় (a-f পর্যন্ত) → false
- '9' — হেক্স অঙ্ক (৯) → true