PHP foreach到Smarty

PHP foreach到Smarty,php,foreach,smarty,Php,Foreach,Smarty,我正在尝试将RSS提要解析器PHP代码重写为Smarty。不知怎的,这个聪明人不会为我工作的。谁能帮帮我吗 <ul> <?php foreach ($feed['items'] as $item): ?> <li> <a href="<?= $item['link']; ?>"><?= $item['title']; ?></a> </li> <?php endf

我正在尝试将RSS提要解析器PHP代码重写为Smarty。不知怎的,这个聪明人不会为我工作的。谁能帮帮我吗

<ul>
<?php foreach ($feed['items'] as $item): ?>
    <li>
        <a href="<?= $item['link']; ?>"><?= $item['title']; ?></a>
    </li>
<?php endforeach; ?>
</ul>
我的智能代码更新日期:2013年7月12日

{foreach name=aussen item=$feed.items from=$item}
    <li>
        <a href="{$item.link}">{$item.title}</a>
    </li>
{/foreach} 
{foreach name=aussen item=$feed.items from=$item}
  • {/foreach}
    您的smarty代码有很多问题。首先,也是最重要的,您不应该在同一个文件中包含php逻辑和smarty格式。您应该单独分配smarty变量,然后调用smarty进行格式化。但是,如果你坚持使用现有的东西,你需要考虑以下几点:

  • foreach
    的语法错误-正确的语法是
    {foreach from=$variable item=$loop\u var}

  • php变量在smarty中不是自动可用的-您需要将smarty
    {assign}指令与
    {php}echo$php_var{/php}`的组合添加到smarty中,才能将php变量添加到smarty中

  • 语法
    {php}$item['title']{/php}
    对php无效,将导致语法错误


  • 总的来说,你的方法是有缺陷的。Smarty适用于MVC应用程序中的表示(视图)层,您正在尝试将所有内容合并到一个文件中。不要。如果您不确定如何将应用程序正确设置为MVC,则smarty不适合您。

    我想将其应用到基于smarty的CMS中。这就是为什么要用Smarty重写它。是的,但我不是一个程序员。在行动中学习,如果人们允许的话,而不是通过询问和得到noobs的回复。如果你检查声誉-1,你会问自己有什么问题?只有专业人士才能成为尤达大师?你需要做一些研究,试着自己去做,试着去解决它——并且作为最后的手段来问问题。哦,是的,你是对的!“自己尝试”是为了什么?你怎么知道这不是我的最后手段?如果我已经找到了结果,为什么我需要你?!