このコードを書くと:
$pat='^[A-Za-z][a-zA-Z0-9_\-\.]*@[a-zA-z0-9\-]+\.[a-zA-Z0-9\-\.]+$';
$mail='javad.y1';
ereg($pat,$mail);
私はこのエラーが発生しています:
非推奨: 関数 ereg() は C:\wamp\www\Test\test.php の 10 行目で非推奨です
「Error : Deprecated: Function ereg() is deprecated」というステートメントは、あなたの質問にほとんど答えています。
より現代的な同等のものを使用するという点では、PHP マニュアルのPOSIX 正規表現との違いのページと、今後使用する必要があるpreg_match関数を参照してください。
または、エキサイティングなさらなる読み物については、http: //en.wikipedia.org/wiki/Deprecatedをチェックしてみてください。
サンプルコードで更新
メールを検証しようとしている場合は、次を使用できます。
if(preg_match("/^[A-Za-z][a-zA-Z0-9_\-\.]*@[a-zA-z0-9\-]+\.[a-zA-Z0-9\-\.]+/", $email)) {
// The email is valid. Yay for stuff! And things!
}
とはいえ、これが必ずしも最良のアプローチであるとは言えません。
ereg()
は推奨されていないためです。preg_match()
代わりに使用する必要があります。
代わりに、Perl 互換の RegExを使用できるようになりました。
As of PHP 5.3.0 this extension is deprecated, calling any function
この拡張機能によって提供されると、E_DEPRECATED 通知が発行されます。