【问题标题】:PHP replace string with variablePHP用变量替换字符串
【发布时间】:2018-01-01 16:12:37
【问题描述】:

在我的项目中,我想用 php 变量和交互替换一些字符串。

我有 {Title} 并且这个标题我成功替换为:

str_replace("{Title}", $this->title, $c); 

这可行,但我有疑问如何替换此内容:

模板内容:

<% loop Users %>
    <p>$Title</p>
<% end_loop %>

替换为:

foreach($users as $var)
{
   <p>$var->Title</p>
}

【问题讨论】:

  • 在树枝里吗?
  • @Superdrac 正要发表相同的评论 - 直接 php 和 twig 非常不同
  • 没有正常的 php 文件。我有变量存储在 db
  • 为什么要重新发明轮子?为什么不使用模板引擎?
  • 然后呢? Silverstripe 没有模板引擎?

标签: php


【解决方案1】:

由于 PHP 本身就是一种模板语言,您可以执行以下操作:

<?php foreach($users as $user): ?>
   <p><?= $user->Title ?></p>
<?php endforeach; ?>

【讨论】:

  • 你不能把php存入数据库!
  • 谁告诉你的?
  • 请举例说明如何在数据库中存储 foreach 语句...请
  • 哇,原来这是一条感情线!也是一票否决!我实际上同意@Lars,您几乎可以使用上面给出的普通 PHP 示例直接编写您想要的内容。也许这个答案并不能直接解决 OPs 问题,但它肯定包含“深思”!
  • 我假设您将集合存储在数据库中(这里:$users),而不是它的迭代
【解决方案2】:

另一个关于stackoverflow的帖子:Search and replace multiple values with multiple/different values in PHP5?

我认为你需要一些可以做的事情,如下所示:

$string = 'a ar b br c cr';
$result = str_replace(
  array('a', 'ar'), 
  array('b', 'br'), 
  $string
);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-09
    • 2011-09-29
    • 2016-06-13
    • 2014-06-12
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多