Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过preg_Replace_回调替换preg_Replace_Php_Preg Replace_Preg Replace Callback - Fatal编程技术网

Php 通过preg_Replace_回调替换preg_Replace

Php 通过preg_Replace_回调替换preg_Replace,php,preg-replace,preg-replace-callback,Php,Preg Replace,Preg Replace Callback,我这里有一个PHP库,我想用preg\u replace\u callback替换preg\u replace\u 这是一行: preg_replace("/=([0-9A-F][0-9A-F])/e", 'chr(hexdec("$1"))', $l) 这就是我所做的: preg_replace_callback("/=([0-9A-F][0-9A-F])/", function($m) { return chr(hexdec($m["$1"])); }, $line); 但它不起作用。我

我这里有一个PHP库,我想用
preg\u replace\u callback
替换
preg\u replace\u

这是一行:

preg_replace("/=([0-9A-F][0-9A-F])/e", 'chr(hexdec("$1"))', $l)
这就是我所做的:

preg_replace_callback("/=([0-9A-F][0-9A-F])/", function($m) { return chr(hexdec($m["$1"])); }, $line);
但它不起作用。我仍然不明白
preg\u replace\u回调如何工作。我还研究了许多其他的线索

谁能帮帮我吗


提前非常感谢

您需要使用
$m[1]
访问
$m
数组中的第二个元素:

preg_replace_callback("/=([0-9A-F][0-9A-F])/", function($m) { return  
    chr(hexdec($m[1])); }, $line
);

请参阅。

$m[“$1”]
替换为
$m[1]
。在回调函数中打印
$m
数组。你会发现结构是错误的
$m[“$1”]
最有可能是
$m[1]
为什么您的答案被标记为“社区维基”?是你干的吗?还是其他人?如果不太麻烦的话,请解释一下。(我刚刚在社区维基上读了一篇元帖子,但我看不到它的好处。)