■preg_match
D修飾子を指定しない場合、検索対象文字列の最後の文字が改行文字であれば、その直前にもマッチする。
#以下はマッチする
$var = “123\n”;
preg_match(‘/^[0-9]+$/’,$var);
■ereg
eregはバイナリセーフではないので\0等の特殊文字が存在すると、そこまでの評価になる。
バリデーション時に利用すべきでない
#以下はマッチする
$var = “123\0abc”;
ereg(‘/^[0-9]+$/’,$var);
■preg_match
D修飾子を指定しない場合、検索対象文字列の最後の文字が改行文字であれば、その直前にもマッチする。
#以下はマッチする
$var = “123\n”;
preg_match(‘/^[0-9]+$/’,$var);
■ereg
eregはバイナリセーフではないので\0等の特殊文字が存在すると、そこまでの評価になる。
バリデーション時に利用すべきでない
#以下はマッチする
$var = “123\0abc”;
ereg(‘/^[0-9]+$/’,$var);