PHP 的速记语法

Jun 29th, 2007 | Filed under PHP

Handy shorthand syntax for php.
From: http://www.tech-recipes.com/php_programming_tips288.html

当程序中充满很多if/else结构的时候,程序会显得冗长,如果if/else结构比较简单,我们可以使用?:来简化这种结构:

1
echo "var is ".($var < 0 ? "negative" : "positive");

等同于:

1
2
3
4
5
echo "var is "; 
if ($var < 0) 
    echo "negative"; 
else 
    echo "positive";

第一种方式只用一行代码就完成了if/else五行代码的工作,显得非常简洁,但是从效率上来讲,if/else要高于使用?:,如何取舍,就看个人喜好了。
:smile:

Tags:
  1. 姜运涛
    Jun 30th, 2007 at 07:25
    Reply | Quote | #1

    用 if/else 的效率基本是 ?: 的 2 倍左右
    还是推荐逻辑结构明朗的 if/else
    一方面效率高
    另一方面也为日后的代码维护带来方便

  2. Verdana Mu
    Jul 1st, 2007 at 21:38
    Reply | Quote | #2

    的确如此,不过个人风格不同,至少我不会在乎那点性能差异,呵呵:)

  3. carson
    Dec 12th, 2009 at 00:55
    Reply | Quote | #3

    。。。如果条件非常简单的话用三元还不错啦,省事。复杂条件的话。。if else 是很难被取代的。。

Comments are closed.