2

我正在使用 Smarty 2.6.9,我发现我遇到了以下代码块的问题。

Copyright © {$smarty.now|date_format:'%Y'} CRMPicco. All rights reserved

Smarty 生成的日期似乎是随机的,有时是 8780,有时是 1872……正如我所说,完全随机。

我发现这似乎也是一个环境问题,因为它在我的开发环境(CentOS 5.6)中工作,但在测试环境中被破坏。现在,我意识到这将指向测试环境的配置问题,但我在整个代码库中都使用 PHP 日期函数,如果它不起作用,我很快就会知道。

我很感激我可能会得到类似“如果 PHP 日期函数有效,然后将其发送到您的 Smarty 模板”的建议,但 Smarty 中也必须有办法做到这一点?

这是 Smarty 中的错误还是配置问题?

4

1 回答 1

2

这是一个众所周知的配置问题,由$smarty->plugins_dir未正确设置(或其他阻止访问该目录的问题)引起。

date_format是 Smarty插件的名称,但它也是 PHP函数的名称。如果 Smarty 找不到它的插件,它会回退到调用 PHP 函数,该函数需要一组完全不同的参数。由此产生的破损就是你所看到的。

于 2013-01-29T14:25:43.747 回答