我有这段代码
<?php
$source[]="clock=1,time=1,stamp=3,color=33";
$source[]="clock=2,time=1,stamp=1,color=61";
$label="clock";
$what=$label."=(\d)";
$this="clock=0";
for($i=0; $i<3; $i++)
{
$new_source=preg_replace( $what,$this,$source[$i],$count);
echo $new_source;
};
?>
我需要替换$ label = 1;或$ label = x,$ label = 0但x是可变的。
答案 0 :(得分:1)
首先关闭蝙蝠,不要使用$ this。例如,将其重命名为$ replacement。 $这是PHP5中的保留变量。
接下来,pre_replace中不需要$ count。
最后,将$ what包含在分隔符中(例如/).
$new_source=preg_replace( '/'.$what.'/',$replacement,$source[$i]);
答案 1 :(得分:0)
<?php
$source[]="clock=1,time=1,stamp=3,color=33";
$source[]="clock=2,time=1,stamp=1,color=61";
$label="clock";
$what="/$label=(\d)/";
$to="clock=0";
for($i=0; $i<3; $i++)
{
$new_source=preg_replace( $what,$to,$source[$i]);
echo $new_source;
};
现在这是正确的。问题是: