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

PHPのIntlChar::isdefined()関数の使い方を解説

PHPのIntlChar::isdefined()関数は、指定された値がUnicodeで定義済みの文字であるかどうかを判定するための関数です。文字コードを扱う国際化処理において、特定の文字が有効に定義されているかを確認したい場合に役立ちます。

構文

bool IntlChar::isdefined (val)

パラメータ

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

戻り値

IntlChar::isdefined()関数は、引数として渡された値が定義済みの文字である場合にTRUEを返します。定義されていない文字の場合はFALSEを返し、複数文字の文字列など判定できない値が渡された場合はNULLを返します。

使用例

以下に、IntlChar::isdefined()関数の具体的な使用例を示します。

<?php
   var_dump(IntlChar::isdefined("Z"));
   echo "<br>";
   var_dump(IntlChar::isdefined(" "));
   echo "<br>";
   var_dump(IntlChar::isdefined("HJHK"));
   echo "<br>";
   var_dump(IntlChar::isdefined("89"));
?>

実行結果

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

bool(true)
bool(true)
NULL
NULL

結果の解説

  • "Z" − アルファベットの「Z」はUnicodeで定義済みの文字であるため、bool(true)が返されます。

  • " "(半角スペース)− 空白文字もUnicodeで定義されているため、bool(true)が返されます。

  • "HJHK" − 複数の文字を含む文字列は単一の文字として判定できないため、NULLが返されます。

  • "89" − これも複数文字の文字列であるため、NULLが返されます。

このように、IntlChar::isdefined()関数は単一の文字に対してのみ正しく判定を行う点に注意が必要です。複数文字の文字列を渡した場合はNULLが返されるため、事前に文字列が1文字のみであることを確認してから使用するとよいでしょう。


  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文字列