This is a great question.
首先,您所指的比较运算符(?:)称为
ternary operator. 这对于简单的if/then块非常有用。我花了一段时间才习惯,但现在我一直在使用它们。
您可以接受一个简单的表达式并根据该表达式的结果返回一个值。
这将使$_GET[\'string\']
输入变量(如果存在),如果不存在,则输入空字符串。
$query_string = isset($_GET[\'string\']) ? sanitize_text_field($_GET[\'string\']) : \'\';
你也可以直接回应
echo $name != \'\' && isset($name) ? "Hello, " . $name : "I don\'t believe we\'ve met"
或者将其放入数组中。。。还有布尔人!
$my_array = array(
\'is_gt_5\' => $this_number > 5 ? true : false
);
Why use them here?
有人可能使用回退的原因是,并非所有人都使用4.6。以这种方式编写有助于保持向后兼容性并支持将来的兼容性。