PHP问号

use*_*814 20 php

$hideCode = $likesObj->isAlreadyLikedByUser(facebookUID()) ? 'style="display:none;"' : '';
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释这个问号在这行代码中的作用吗?非常感谢!

nic*_*ckf 48

这被称为三元运算符,它通用于多种语言,包括PHP,Javascript,Python,Ruby ......

$x = $condition ? $trueVal : $falseVal;

// same as:

if ($condition) {
    $x = $trueVal;
} else {
    $x = $falseVal;
}
Run Code Online (Sandbox Code Playgroud)

需要注意的一点是,在PHP中使用三元组是这样的:

注意:请注意,三元运算符是一个语句,它不会计算变量,而是计算语句的结果.知道是否要通过引用返回变量很重要.声明返回$ var == 42?$ a:$ b; 因此,在返回引用函数中将不起作用,并且在以后的PHP版本中发出警告. 资源