我有twig模板并在此模板中呈现一些数据,我有两个变体
$datatest = "test" . chr(13) . "test"; //nl2br work good
$datatest = "test\ntest";//nl2br dosn't work, have string in template test\ntest
和第二个我有查询构建器,选择一些字段
$qb
->select('
CONCAT(TRIM(s.streetAddress), \'\\n\', s.postal, s.postOffice) as company_address
')
我试试
$qb
->select('
CONCAT(TRIM(s.streetAddress), CHAR(13), s.postal, s.postOffice) as company_address
')
但查询构建器有错误,找不到函数CHAR(13),如何为CHAR(13)创建自定义DQL?
并在模板中dump(data)
有字符串但nl2br不起作用
我尝试了另一种过滤树枝,就像这样
<div style="font-size: 8px;">
{{ data.company_name|upper }}<br>
{% set address = data.company_address|nl2br %}
{{ address|upper|raw }}
</div>
<br>
<div style="font-size: 9px;">
{{ datatest|nl2br }}
</div>
需要做什么才能选择nl2br工作正常?
答案 0 :(得分:4)
您不应该在SQL查询中格式化输出。您正在使用MVC框架,所以您绝对应该遵循它的概念 - 让演示在视图中完成(a.k.a.模板)。
我建议以这种方式选择并呈现数据:
型号:
$qb->select('s.streetAddress, s.postal, s.postOffice')->from ...
模板:
{{ streetAddress }}<br>
{{ postal }} {{ postOffice }}