PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのIntlChar::getBlockCode()関数とは?構文・使い方・サンプルコードを解説

PHPのIntlChar::getBlockCode()関数は、指定した値(val)が属するUnicodeの割り当てブロック(アロケーションブロック)を取得するための関数です。この関数は国際化拡張モジュール「intl」に含まれており、ある文字がUnicode規格上どのブロックに分類されるのかを判定したい場合に役立ちます。

構文

IntlChar::getBlockCode(val)

パラメータ

  • val − 判定対象となる整数値、またはUTF-8文字列としてエンコードされた文字を指定します。

戻り値

IntlChar::getBlockCode()関数は、引数valに対応するUnicodeブロックの値を返します。戻り値として代表的なブロックコードには以下のようなものがあります。

  • IntlChar::BLOCK_CODE_BASIC_LATIN

  • IntlChar::BLOCK_CODE_GREEK

  • IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS

上記以外にも、Unicodeの各ブロックに対応した多数の定数がIntlCharクラスに用意されており、用途に応じて比較に利用できます。

使用例

以下に具体的なサンプルコードを示します。

<?php
   var_dump(IntlChar::getBlockCode("A") === IntlChar::BLOCK_CODE_BASIC_LATIN);
   echo "<br>";
   var_dump(IntlChar::getBlockCode("PQRS") === IntlChar::BLOCK_CODE_BASIC_LATIN);
   echo "<br>";
   var_dump(IntlChar::getBlockCode("u{2603}") === IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS);
?>

出力結果

上記コードを実行すると、次のような出力が得られます。

bool(true)
bool(false)
bool(false)

最初の例では、半角英字「A」が基本ラテン文字(BASIC LATIN)ブロックに属しているためtrueが返されます。一方、2つ目と3つ目の例では条件式が成立しないため、いずれもfalseが出力されます。このようにIntlChar::getBlockCode()を使うことで、文字のUnicodeブロックへの所属を簡単に確認できます。

  1. PHPのIntlChar::isJavaIDPart()関数の使い方を徹底解説

    IntlChar::isJavaIDPart()関数は、指定した文字がJavaの識別子(identifier)の一部として使用できる文字かどうかを判定するためのPHPの組み込み関数です。英字・数字・通貨記号($など)・接続句読点(_など)といった、Java識別子に含めることができる文字に対しては true を返します。 構文 IntlChar::isJavaIDPart( $val ) パラメータ $val:UTF-8エンコードされた文字列として表される1文字、またはコードポイントを示す整数値を指定します。 戻り値 $val がJava識別子の一部として有効な文字であれば bool(

  2. PHPのIntlChar::totitle()関数の使い方を徹底解説

    IntlChar::totitle() 関数は、入力された値がUnicode文字のタイトルケース(Titlecase)に該当するかどうかを判定し、該当する場合はそのタイトルケース形式の文字を返すための関数です。タイトルケースとは、見出しや表題などで用いられる大文字・小文字の書式のことで、たとえばラテン文字の「lj」のような合字に対しては「Lj」という形式が割り当てられます。 この関数を利用するには、PHPに国際化拡張モジュール(intl拡張)がインストールされている必要があります。 構文 IntlChar::totitle(val) パラメータ val − UTF-8文字列