【发布时间】:2010-10-20 03:50:30
【问题描述】:
我想将 foreach 循环的结果转换为一个字符串变量,以便以后使用(所以我不需要将 foreach 循环粘贴到任何地方)。我有这个:
foreach($pairs as $d=>$m) {
$orderedpairs .= "[".$d."],[".$m."]"+"<br />";
}
echo $orderedpairs;
如果我用“echo”代替赋值运算符,它工作正常,所以循环没问题,我认为这只是有问题的变量赋值。谢谢!
【问题讨论】:
-
旁注:考虑使用 printf 或字符串插值,使其更具可读性。 (1) $orderedpairs .= "[$d],[$m]
"; (2) $orderedpairs .= printf('[%s],[%s]
', $d, $m); -
并且不要忘记在循环开始之前初始化 $orderedpairs。忽略这本身不是问题,但应该这样做 - 否则可能会引发通知(并且可能会出现奇怪的错误或安全漏洞,请记住 register_global)。
标签: php iteration concatenation