preg_replace及其自动变量

时间:2013-09-04 11:25:45

标签: php regex preg-replace

在从某些PHP代码中删除错误时,我的浏览器会向我显示此错误:

Parse error: syntax error, unexpected '1' (T_LNUMBER), expecting variable (T_VARIABLE) or '$' in (path)/functions.php on line 12

function.php的第12行如下:

$file_id = preg_replace($regex,$1,$file);

和$ regex定义的正则表达式是#^([0-9]*)\.markdown$#。我在其他站点中使用preg_replace和PHP(5.3)的版本相同。我尝试将$1更改为\\1$$1,但它没有做任何事情。

这段代码有什么意义?我不明白。

2 个答案:

答案 0 :(得分:4)

您应该使用qoutes "$1",如下所示:

$file_id = preg_replace($regex,"$1",$file);

答案 1 :(得分:1)

试试这个:使用引用

$file_id = preg_replace($regex,'$1',$file);