পরিচয়
PHP-তে IntlChar::charDirection() ফাংশনটি একটি Unicode ক্যারেক্টারের বাইডাইরেকশনাল (bidirectional) ক্যাটাগরি ফেরত দেয়। এটি টেক্সট রেন্ডারিং-এ গুরুত্বপূর্ণ, কারণ কিছু লিপি বাম থেকে ডান (LTR) এবং কিছু ডান থেকে বাম (RTL) লিখিত হয়। এই ফাংশন নির্দেশ করে ক্যারেক্টারটি টেক্সট প্রবাহে কীভাবে আচরণ করবে।
সিনট্যাক্স
int IntlChar::charDirection($val)
প্যারামিটার
val − একটি পূর্ণসংখ্যা (Unicode কোডপয়েন্ট) বা UTF-8 এনকোডেড ক্যারেক্টার স্ট্রিং।
রিটার্ন ভ্যালু
ফাংশনটি একটি পূর্ণসংখ্যা রিটার্ন করে যা IntlChar ক্লাসের CHAR_DIRECTION_* কনস্ট্যান্টের সাথে মিলে। কিছু গুরুত্বপূর্ণ মান:
- CHAR_DIRECTION_LEFT_TO_RIGHT (L) — ০
- CHAR_DIRECTION_RIGHT_TO_LEFT (R) — ১
- CHAR_DIRECTION_EUROPEAN_NUMBER (EN) — ২
- CHAR_DIRECTION_ARABIC_NUMBER (AN) — ৫
- CHAR_DIRECTION_WHITE_SPACE_NEUTRAL (WS) — ৯
- CHAR_DIRECTION_OTHER_NEUTRAL (ON) — ১০
- CHAR_DIRECTION_LEFT_TO_RIGHT_EMBEDDING (LRE) — ১৪
- CHAR_DIRECTION_RIGHT_TO_LEFT_ARABIC (AL) — ১৬
- আরো অনেক...
উদাহরণ
<?php
var_dump(IntlChar::charDirection("-"));
echo "<br>";
var_dump(IntlChar::charDirection("*"));
echo "<br>";
var_dump(IntlChar::charDirection("kjh"));
echo "<br>";
var_dump(IntlChar::charDirection("H"));
echo "<br>";
?>
আউটপুট
int(3) // CHAR_DIRECTION_EUROPEAN_NUMBER_SEPARATOR int(10) // CHAR_DIRECTION_OTHER_NEUTRAL NULL // বহু ক্যারেক্টার int(0) // CHAR_DIRECTION_LEFT_TO_RIGHT
ব্যাখ্যা:
- '-' (হাইফেন) — ইউরোপিয়ান নম্বর সেপারেটর (EN separator)।
- '*' (অ্যাস্টারিস্ক) — অন্যান্য নিউট্রাল (ON)।
- 'kjh' — বহু ক্যারেক্টার → NULL।
- 'H' — ল্যাটিন আপারকেস লেটার → LTR (০)।