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

PHPのIntlChar::isMirrored()関数とは?Bidi_Mirroredプロパティの判定方法を解説

PHPのIntlChar::isMirrored()関数は、指定した文字やコードポイントが「Bidi_Mirrored(双方向ミラー)」プロパティを持っているかどうかを判定するための関数です。このプロパティは、右から左へ記述されるアラビア語やヘブライ語などの双方向(BiDi)テキスト処理において、括弧などの文字が文脈に応じて鏡像に反転されるべきかを示すものです。

構文

bool IntlChar::isMirrored(mixed $val)

パラメータ

  • val ― 判定対象となる値。UTF-8でエンコードされた1文字、またはUnicodeコードポイントを表す整数値を指定します。

戻り値

指定した値がBidi_Mirroredプロパティを持っている場合は TRUE(true) を返し、持っていない場合は FALSE(false) を返します。

使用例

以下に、IntlChar::isMirrored()関数を使用したサンプルコードを示します。

<?php
    var_dump(IntlChar::isMirrored("<"));
    echo "<br>";
    var_dump(IntlChar::isMirrored(">"));
    echo "<br>";
    var_dump(IntlChar::isMirrored("p"));
    echo "<br>";
    var_dump(IntlChar::isMirrored("*"));
    echo "<br>";
?>

実行結果

上記のコードを実行すると、次のような出力になります。

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

解説

この例では、「<」と「>」は開き括弧・閉じ括弧として双方向テキストの中で鏡像反転の対象となるため、true が返されます。一方、英字の「p」や記号の「*」は鏡像関係を持たない文字であるため、false が返されます。

注意点

  • IntlCharクラスを使用するには、PHPにIntl拡張モジュール(PECL intl)がインストールされている必要があります。

  • 引数には整数のコードポイント(例:0x3C)を渡すことも可能です。

  • 無効なコードポイントを渡した場合は、警告が発生するか false が返されますので、入力値の検証を行うことをおすすめします。

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