我怎麼能改寫這個PHP代碼:如何改寫depricated的preg_replace與preg_replace_callback - 圖案/ E
$str1 = "/.*/e";
$str2 = "eval('phpinfo();')";
preg_replace($str1, $str2,'');
隨着preg_replace_callback功能?
我測試:
preg_replace_callback($str1 , 'callback', '');
// the callback function
function callback ($matches) {
return $str2;
}
但錯誤是:
警告(!):preg_replace_callback():修改/ E不能使用 與更換回調
我該如何解決這個錯誤?
你仍然需要從你的正則表達式中刪除結束'e'在'$ str1'。 –
你只是想''phpinfo()'成一個字符串? – chris85
我不確定我關注。 'preg_replace_callback'不需要eval標誌。只需在回調函數中輸入想要執行的代碼即可。 –