これは、Kohana3バリデータールールで私が見つけたものです。
public static function digit($str, $utf8 = FALSE)
{
if ($utf8 === TRUE)
{
return (bool) preg_match('/^\pN++$/uD', $str);
}
else
{
return (is_int($str) AND $str >= 0) OR ctype_digit($str);
}
}
$utf8
誰かがパラメータをとして渡すときに例を挙げて、異なる結果を与えることができますかtrue
(false
正確には-の誤検知$utf8 == false
)?
私が覚えていることから、数字はASCIIセーフな文字であり、utf-8文字のどれもそれらと混同されることはありません。
PS:さらに詳細-このチェックをだまして、UTF-8では数字のようには見えないが、次のようにチェックに合格するものに合格することは可能ですか?$utf-8 == false