【发布时间】:2019-09-28 06:34:52
【问题描述】:
我的模板中有一个替换功能,没什么特别的。
{$description:replace:'http://www.youtube':'https://www.youtube'}
$description 可以包含德语变音符号和 ISO-8859-1 字符。在 php
同样适用于 php
{assign var="title" value=mb_convert_encoding($item->title, "ISO-8859-1", "UTF-8")}
{$title|replace:" ? ":" - "}
为什么 smarty 在高于 7.0 的 php 上用 Umlauts 和 ISO-8859-1 字符替换字符串有问题?
【问题讨论】:
-
你用的是什么smarty版本?也尝试在 .php 中分配变量标题,然后将其分配给您的模板文件,看看会发生什么
-
我使用的是 3.1.31。好的,我试试看。
-
@Aaron 当我在 php 中分配变量时,它可以工作。但现在问题出在哪里?
-
我不是一个聪明的专家,也不知道它是如何调用 php 函数的。技术上应该没有问题。您可以尝试仅打印变量标题而不使用替换功能吗?我认为语法有问题。
标签: php replace smarty iso-8859-1 php-7.2