(PHP 7, PHP 8)
IntlChar::charDirection — コードポイントの双方向カテゴリの値を取得する
» Unicode bidirectional algorithm (UAX #9) で使われる、コードポイントの双方向カテゴリの値を返します。
注意:
コードポイントが割り当てられていない値にも、 R や AL の双方向カテゴリを持つものがあります。 これは、右から左に書く言葉で予約されているブロックに含まれているからです。
codepointコードポイントを表す int 型の値 (例: U+2603 SNOWMAN を表す 0x2603)、あるいは UTF-8 文字列としてエンコードされた文字 (例: "\u{2603}")。
双方向カテゴリの値を返します。 下記の定数のうち、ひとつを返します:
IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHTIntlChar::CHAR_DIRECTION_RIGHT_TO_LEFTIntlChar::CHAR_DIRECTION_EUROPEAN_NUMBERIntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_SEPARATORIntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_TERMINATORIntlChar::CHAR_DIRECTION_ARABIC_NUMBERIntlChar::CHAR_DIRECTION_COMMON_NUMBER_SEPARATORIntlChar::CHAR_DIRECTION_BLOCK_SEPARATORIntlChar::CHAR_DIRECTION_SEGMENT_SEPARATORIntlChar::CHAR_DIRECTION_WHITE_SPACE_NEUTRALIntlChar::CHAR_DIRECTION_OTHER_NEUTRALIntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_EMBEDDINGIntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_OVERRIDEIntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ARABICIntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_EMBEDDINGIntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_OVERRIDEIntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_FORMATIntlChar::CHAR_DIRECTION_DIR_NON_SPACING_MARKIntlChar::CHAR_DIRECTION_BOUNDARY_NEUTRALIntlChar::CHAR_DIRECTION_FIRST_STRONG_ISOLATEIntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_ISOLATEIntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ISOLATEIntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_ISOLATEIntlChar::CHAR_DIRECTION_CHAR_DIRECTION_COUNTnull を返します。
例1 さまざまなコードポイントの例
<?php
var_dump(IntlChar::charDirection("A") === IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT);
var_dump(IntlChar::charDirection("\u{05E9}") === IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT);
var_dump(IntlChar::charDirection("+") === IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_SEPARATOR);
var_dump(IntlChar::charDirection(".") === IntlChar::CHAR_DIRECTION_COMMON_NUMBER_SEPARATOR);
?>上の例の出力は以下となります。
bool(true) bool(true) bool(true) bool(true)