《PHP編程:PHP正則替換函數preg_replace()報錯:Notice Use of undefined constant的解決方法分析》要點:
本文介紹了PHP編程:PHP正則替換函數preg_replace()報錯:Notice Use of undefined constant的解決方法分析,希望對您有用。如果有疑問,可以聯系我們。
PHP編程本文實例講述了PHP正則替換函數preg_replace()報錯:Notice Use of undefined constant的解決方法.分享給大家供大家參考,具體如下:
PHP編程環境錯誤級別:error_reporting =E_ALL
PHP編程某天我在研究一下php下的正則替換函數perg_replace(),
PHP編程示例:
PHP編程代碼:
PHP編程
$subject="2222<b>a</b>2222fff222222222A22222";
$pattern = "/(a)/e";
$replacement= "md5($1)";//$1,取匹配到的內存變量的值(\1也可以,只不過要注意雙引號內的轉義)
echo preg_replace($pattern,$replacement, $subject);
PHP編程結果:
PHP編程雖然結果是對的,但是報了如下的錯誤:
PHP編程Notice: Use of undefined constant a - assumed 'a' in D:\xampp\htdocs\studyRoom\regular\index.php(18) : regexp code on line 1
PHP編程造成這原因的是在$replacement= "md5($1)";中的md5()方法,在參數傳遞的時候,參數沒有加單引號或者雙引號,系統就認為是個常量,所以就出現了這樣的問題.改成如下 即可:
PHP編程$replacement= "md5('$1')";(或:$replacement= "md5('\\1')";)
PHP編程注:在取匹配到的內存變量的值的時候可以用"$1"或者"\1"這樣的形式.
PHP編程PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:
PHP編程JavaScript正則表達式在線測試工具:
http://tools.jb51.net/regex/javascript
PHP編程正則表達式在線生成工具:
http://tools.jb51.net/regex/create_reg
PHP編程更多關于PHP相關內容感興趣的讀者可查看本站專題:《php正則表達式用法總結》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php面向對象程序設計入門教程》、《PHP網絡編程技巧總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
PHP編程希望本文所述對大家PHP程序設計有所幫助.
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/1889.html