我想做这样的事情
{if image_exists}
<img src='{$path}{$imagename}'>
{else}
<img src='{$path}default.jpg'>
{/if}
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
而不是让Smarty做逻辑,我会说实际的PHP更好地做它.
在PHP中,您可以执行以下操作:
if (file_exists($filename))
{
$path = $filename;
}
else
{
$path = 'default.jpg';
}
Run Code Online (Sandbox Code Playgroud)
然后在模板中,您将不需要任何if声明.只需像平常一样使用img标签.
<img src="{$path}" />
Run Code Online (Sandbox Code Playgroud)
如果你真的想在模板文件中进行检查,那么只需使用Smarty if语句正常使用PHP函数即可.
{if file_exists($path . $imagename)}
<img src='{$path}{$imagename}'>
{else}
<img src='{$path}default.jpg'>
{/if}
Run Code Online (Sandbox Code Playgroud)