2011-11-14 8 views
0

私が支払いゲートウェイにサポートしようとすると、このエラーメッセージが表示される取得しています:これは、その支払いゲートウェイ機能eregi_replace()は推奨されません

 $response = eregi_replace ("[[:space:]]+", " ", $response); 
     $response = eregi_replace ("[\n\r]", "", $response); 

にに関連するコードがある

Message: Function eregi_replace() is deprecated 
Message: Function eregi_replace() is deprecated 

このエラーを解決するための助けがあれば素晴らしいでしょう!

+0

quadrizillionの重複を:http://stackoverflow.com/search?q=eregi+is+deprecated – Gordon

答えて

4

機能が廃止予定の場合、それはもはやサポートされていないことを意味し、その使用はお勧めしません。実際、eregiの関数はすべて非推奨です。

preg_replace()などの別の機能を試す必要があります。これは、正規表現を編集する必要がある可能性があります。

これはPCRE、優先エンジンおよびEREGが推奨されていません理由を使用しています

$response = preg_replace ("/[[:space:]]+/", " ", $response); 
$response = preg_replace ("/[\n\r]/", "", $response); 

$response = preg_replace ("/\s+/", " ", $response); 
$response = preg_replace ("/[\r\n]/", "", $response); 
+0

すべてのpreg_replaceが原因ですメッセージ:simplexml_load_string()[function.simplexml-load-string]:エンティティ:行1:パーサー警告:xmlParsePITarget:無効な名前接頭辞 'xml'エラー –

+1

最初に置き換えるスペースを交換してください。 – SERPRO

+0

あなたの援助に大変感謝しています –

1

変更str_replace & preg_replace、非推奨されない機能を使用しています

$response = preg_replace ("~[ ]+~", " ", $response); 
$response = str_replace (array("\n", "\r"), "", $response); 

にこれらの行。

+0

何行に3つのスペースがある場合は? – Marcus

+0

最初のものは、二重空間だけを取り除いたからだと思います。 – SERPRO

+0

完璧に動作し、多くのありがとう。 –

0

変更にこれらのラインを動作するはずです。

0

このコードは、そのために動作します:

$response = preg_replace("#[\r\n]#", "", $response); 
$response = preg_replace("#\s+#m", "$1", $response); 
関連する問題