1
是否有可能縮短我的發言是這樣,例如:如果陳述smarty,任何方式縮短方式?
{if $name eq 'Fred' or 'Monalisa' or 'Simon'}
Welcome Sir.
{/if}
如果是這樣,怎麼會需要看?
是否有可能縮短我的發言是這樣,例如:如果陳述smarty,任何方式縮短方式?
{if $name eq 'Fred' or 'Monalisa' or 'Simon'}
Welcome Sir.
{/if}
如果是這樣,怎麼會需要看?
@ Gaurav的答案很接近,但不是聰明的語法。這應該工作:
{if in_array($name, array('Fred', 'Monalisa', 'Simon')}
Welcome Sir.
{/if}
在一個側面說明,我不認爲有人叫蒙娜麗莎寧願被稱爲「先生」。 :)
你也可以做這樣的邏輯在PHP中:
<?php
// where $feminine_names is array of names, ex, array('Mary', 'Sue')
$welcome_title = in_array($name, $feminine_names) ? 'Madame' : 'Sir';
// if name is still needed in your template
$smarty->assign('name', $name);
$smarty->assign('welcome_title', $welcome_title);
?>
{*template file*}
Welcome {$welcome_title}.
或走一英里,使用自定義modifier:
<?php
function welcome_title($name){
// where $feminine_names is array of names, ex, array('Mary', 'Sue')
return in_array($name, $feminine_names) ? 'Madame' : 'Sir';
}
$smarty->register_modifier('welcome_title', 'welcome_title');
$smarty->assign($name);
?>
{*template file*}
Welcome {$name|welcome_title}.
hehe http://www.google.com/search?hl=zh-CN&nfpr=1&sa=X&ei=D83kTavRBcmZOr6lvLcG&ved=0CBgQBSgA&q=mona+lisa+was+a+man&spell=1&bav=on.2,or.r_gc.r_pw &biw = 1280&bih = 939 – 2011-05-31 11:12:40
@Wesley van Opdorp Hm。那麼,這是開放的辯論;) – 2011-05-31 11:47:40
嗯,我想我不能在一個聰明的循環中使用in_array – Cameleon 2011-05-31 12:03:45