ホームページ > バックエンド開発 > PHPチュートリアル > php5.3 プロンプト関数 ereg() は非推奨です エラー問題の解決策、eregdeprecated_PHP チュートリアル

php5.3 プロンプト関数 ereg() は非推奨です エラー問題の解決策、eregdeprecated_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:14:08
オリジナル
823 人が閲覧しました

php5.3 プロンプト関数 ereg() は非推奨ですエラー問題の解決策、eregdeprecated

この記事の例では、php5.3 の関数 ereg() が非推奨であるエラーの問題を解決する方法を説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです

1. 質問:

PHP 5.3 ereg() は正常に使用できず、「関数 ereg() は非推奨です。エラーです」というプロンプトが表示されます。これは関数がアップグレードされており、preg_match のようなルールに // を使用する必要があるためです。 php5.3 も ereg のリズムを失いました。

PHP 5.3 ereg() は正常に使用できず、「Function ereg() is deprecated Error」というメッセージが表示されます。
問題の根本は、PHP には posix と perl の 2 つの正規表現メソッドがあり、PHP6 では posix 正規表現メソッドを廃止する予定であるため、後から preg_match が追加されました。この問題の解決策は非常に簡単です。 ereg の前にフィルター プロンプト情報シンボルを追加するだけです。 ereg() を @ereg() に変更します。これによりプロンプト情報がブロックされますが、根本的な問題はまだ解決されていません。PHP バージョン 5.2 より前では、通常は ereg が使用されていました。PHP 5.3 以降では、ereg の代わりに preg_match を使用する必要があります。したがって、このようにする必要があります。

元: ereg("^[0-9]*$",$page) は次のようになります: preg_match("/^[0-9]*$/",$page)

特別な注意: posix と perl の表現の明らかな違いはスラッシュを追加するかどうかです。そのため、ereg と比較すると、後者は正規表現の前後に 2 つの "/" 記号を追加しますが、これは必須です。

例:

変更前:

コードをコピーします コードは次のとおりです:
function inject_check($sql_str) {
$sql_str = strto lower($sql_str);
return eregi('fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str); / フィルタリングする
}

2. 解決策:
コードが配置されているファイルの場所を見つけます:
コードをコピーします コードは次のとおりです:
function inject_check($sql_str) {
$sql_str = strto lower($sql_str);
return preg_match('/fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile/', $sql_str) ; // フィルター
}


注: 必ず先頭と末尾に「/」を追加してください。この段落の参考文献: http://www.bkjia.com/article/38857.htm

追加: この問題はphp5.2より前のバージョンでは発生しません。

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/910600.html技術記事 php5.3 プロンプト関数 ereg() は非推奨ですエラー問題の解決策、ereg 非推奨この記事では、php5.3 プロンプト関数 ereg() は非推奨ですエラー問題の解決策の例について説明します。みんなとシェアしましょう...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート