代码之家  ›  专栏  ›  技术社区  ›  buley

解释这个php速记法[复制]

php
  •  0
  • buley  · 技术社区  · 15 年前

    可能重复:
    What is the PHP ? : operator called and what does it do?

    我吃得像个傻瓜,但我不完全理解这段代码中发生了什么:

    $var .= ($one || $two) ? function_one( $one, $another) : function_two( $two, $another);
    

    如果$1或$2,那么$var等于fuction ou one(),否则函数ou two()?使用这个语法的目的是什么——速度?

    4 回复  |  直到 15 年前
        1
  •  4
  •   Richard Fearn    15 年前

    如果任一 $one 是真的,或者 $two 是真的,那么调用的结果 function_one 被追加到 $var . 否则,调用的结果 function_two 被追加到 $var .

    它基本上是以下内容的简写:

    if ($one || $two) {
      $var .= function_one( $one, $another);
    } else {
      $var .= function_two( $two, $another);
    }
    
        2
  •  3
  •   Alexandru Luchian    15 年前

    $var 将从返回的 function_one() 如果 $one $two 计算结果为true,并将附加 function_two() 否则。

        3
  •  1
  •   Babiker    15 年前

    function_one() function_two() 两者都返回一个值。

    您正在连接 $var 基于计算结果的if语句的这些函数之一的返回值 $one $two 如果 一元 $tow 被分配或返回为真 函数() 连接,否则返回的值 function_tow() 是。

        4
  •  1
  •   Foobar    15 年前

    $var.=($1$2)?函数一($1,$2):函数二($2,$2);

    在$var后面附加函数_One()或函数_Two()的输出

    如果$one为真,则执行函数_one(),否则执行函数_two()。

    推荐文章