树枝和撇号

时间:2015-10-13 19:50:44

标签: php twig apostrophe

我最近在PHP网站上实现了Twig。该站点有一个MySQL数据库,其中每个条目都是一个报告。实现Twig后,撇号未正确显示。这个问题的一个例子如下:

  

评估国家工人的薪酬

网页上的Charset与以前一样。

在使用Twig之前,我显示了这样的结果,一切正常:

    echo "<table border='1' width=100%><tr>";
    // printing table headers
    for($i=0; $i<$fields_num; $i++){
        $field = mysql_fetch_field($result);
        echo "<td>{$field->name}</td>";
    }

    while($row = mysql_fetch_assoc($result)){
        echo "<tr>";
        // $row is array... foreach( .. ) puts every element
        // of $row to $cell variable
        foreach($row as $cell)
            echo "<td>$cell</td>";
            echo "</tr>\n";
    }

    echo "</table>";

相反,我现在使用Twig的模板标签:

{% for i in queryResult %}
    <tr>
        <td> {{ i.Month }} </td>
        <td> {{ i.Year }} </td>
        <td> {{ i.Title}) }} </td>
{% endfor %}

1 个答案:

答案 0 :(得分:1)

解决方案是使用raw filter来阻止自动转义。

这涉及到改变:

<td> {{ i.Title }) }} </td>

要:

<td> {{ i.Title|raw }) }} </td>

感谢Alain Tiemblo的评论,指出我的方向正确。