ホームページ  >  記事  >  バックエンド開発  >  cacti のデプロイ、php5.3.6 エラー関連の問題

cacti のデプロイ、php5.3.6 エラー関連の問題

WBOY
WBOYオリジナル
2016-06-13 13:06:37673ブラウズ

cacti をデプロイすると、php5.3.6 がエラーを報告します。
php のバージョンが高すぎることが原因であることはわかっていますが、バージョンを下げることはしたくありません。でも、php があまり得意ではないので、コードを変更する方法を教えてください。
変更を加える前に、このエラーを報告してください。
PHP 非推奨: 関数 ereg_replace() は /usr/local/apache2/htdocs/lib/snmp.php の 341 行目で非推奨になりました
PHP 非推奨: 関数 ereg_replace() は /usr/local/apache2/ で非推奨になりましたhtdocs/lib/snmp.php 426 行目

コード:
$string = trim(ereg_replace("{.*= ?}", "", $string));
$string = ereg_replace(REGEXP_SNMP_TRIM, "", $string);

ereg_replace を preg_replace に変更するだけで、2 つのコードがそれぞれ次のエラーを報告します
PHP 警告: preg_replace(): 終了区切り文字がありません。 '
PHP 警告: preg_replace(): 不明な修飾子

すみません、何が起こっていますか?そしてそれを解決するにはどうすればよいですか?



-----解決策---------
PHP は非推奨になりました: これは php5.3 に固有の警告です。この関数は非推奨になる予定であることを意味します。
最も簡単な解決策は、このエラー カテゴリをブロックすることです

。他の機能を使用する場合、間違いを犯した場合は誰を責めることができますか?
------解決策----------------------
preg_replace() で置き換えるだけでは十分ではありません。この関数の最初のパラメータは正規です。形式が間違っています。正規表現は // または ## で分解する必要があります。
------解決策----------------------
最初に自分のニーズを明確に説明する必要があります。置き換えるもの また、{.*= ?} と REGEXP_SNMP_TRIM とは何ですか?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。