三元运算

模板可以支持三元运算符,例如:

{$status? '正常' : '错误'}
{$info['status']? $info['msg'] : $info['error']}
{$info.status? $info.msg : $info.error }

5.0版本还支持如下的写法:

{$varname.aa ?? 'xxx'}

表示如果有设置$varname则输出$varname,否则输出'xxx'。 解析后的代码为:

<?php echo isset($varname['aa']) ? $varname['aa'] : '默认值'; ?>
{$varname?='xxx'} 

表示$varname为真时才输出xxx。 解析后的代码为:

<?php if(!empty($name)) echo 'xxx'; ?>

{$varname ?: 'no'}

表示如果$varname为真则输出$varname,否则输出no。解析后的代码为:

<?php echo $varname ? $varname : 'no'; ?>

{$a==$b ? 'yes' : 'no'}

前面的表达式为真输出yes,否则输出no, 条件可以是==、===、!=、!==、>=、<=