PHP - IF报表中的回报?语法正确吗?

时间:2013-02-22 15:19:37

标签: php syntax return

所以我的一个函数返回了:

return '<i class="'.$class.'" style="size:'.$size.';"></i>';

但是,如果没有填充尺寸,我不想显示样式,所以我需要if $size

这可能吗?我在手册中找不到一个例子。

对不起我应该澄清 - 如果$ size为空,我仍然希望返回,但我不希望style =“在那里,所以伪代码:

return:$ class if $ size($ size)

1 个答案:

答案 0 :(得分:4)

return sprintf('<i class="%s"%s></i>',           // result using %s palceholders
  $class,                                        // first %s placeholder
  !empty($size) ? 'style="size:'.$size.';"' : '' // second %s placeholder
);

Inline ternary operator只有在style="..."不为空时才会包含$size属性(作为一个整体)。

成果:

/*
 * Where size is empty
 */
$class = 'foo';
$size = null;

// Result:
<i class="foo"></i>

/*
 * Where size is populated
 */
$class = 'foo';
$size = 'large';

// Result:
<i class="foo" style="size:large;"></i>