【发布时间】:2018-05-15 17:59:25
【问题描述】:
我在 PHP 脚本中有一个 foreach 循环,它从数据库中输出图标/链接。我已经使用this question 来使用 str_replace 在图标渲染后更改一些值。
foreach ($icons as $ic)
{ echo str_replace('{{EMP_NO}}', $_SESSION['EmpNo'], $ic['url']) . ' '; }
我需要对值 {{FIRST_NAME}} 执行类似的操作,但是当我附加第二个 str_replace 时,第二个命令/值将被忽略。像这样:
foreach ($icons as $ic)
{ echo str_replace('{{EMP_NO}}', $_SESSION['EmpNo'], $ic['url']) . ' '; }
{ echo str_replace('{{FIRST_NAME}}', $_SESSION['FirstName'], $ic['url']) . ' '; }
当我尝试像这样组合它们时,它会使我不想要的图标输出加倍:
foreach ($icons as $ic) { echo str_replace('{{EMP_NO}}', $_SESSION['EmpNo'], $ic['url']) . ' '; echo str_replace('{{FIRST_NAME}}', $_SESSION['FirstName'], $ic['url']) . ' '; }
我如何也str_replace {{FIRST_NAME}}?
【问题讨论】:
-
echos 都应该在循环体内:foreach ($icons as $ic) { echo str_replace('{{EMP_NO}}', $_SESSION['EmpNo'], $ic['url']) . ' '; echo str_replace('{{FIRST_NAME}}', $_SESSION['FirstName'], $ic['url']) . ' '; } -
错字在哪里?没有@FirstOne
-
@RoccoTheTaco 如两个答案所示,
foreach中不能有两个主体。打错字了! -
@RoccoTheTaco 同意不同意。链接的问题和答案显示了有关如何使用该功能的简洁示例,就像手册(您未能查阅)一样。您的案例只会通过使用数组和循环来增加复杂性。
标签: php