Not sure why, but on my system (Windows 10), the escape string for Unicode must be delimited by double-quotes, not single quotes. E.g.
// this returns NULL
IntlChar::isalpha('\u{00E9}');
// this returns TRUE
IntlChar::isalpha("\u{00E9}");
(PHP 7, PHP 8)
IntlChar::isalpha — コードポイントがアルファベットかを調べる
指定されたコードポイントがアルファベットかを判定します。
つまり、general categories "L" (letters) の場合に true
を返します。
codepoint
コードポイントを表す int 型の値 (例: U+2603 SNOWMAN を表す 0x2603
)、あるいは UTF-8 文字列としてエンコードされた文字 (例: "\u{2603}"
)。
codepoint
がアルファベットの場合、
true
を返します。そうでない場合、false
を返します。
失敗した場合は、null
を返します。
例1 さまざまなコードポイントの例
<?php
var_dump(IntlChar::isalpha("A"));
var_dump(IntlChar::isalpha("1"));
var_dump(IntlChar::isalpha("\u{2603}"));
?>
上の例の出力は以下となります。
bool(true) bool(false) bool(false)
Not sure why, but on my system (Windows 10), the escape string for Unicode must be delimited by double-quotes, not single quotes. E.g.
// this returns NULL
IntlChar::isalpha('\u{00E9}');
// this returns TRUE
IntlChar::isalpha("\u{00E9}");