PHP 运算符“?"是什么?和“:"打电话,他们做什么?

什么是 ?: PHP 中的操作符?

What are the ? and : operators in PHP?

例如:

(($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER)

推荐答案

这是条件运算符.

$x ? $y : $z

表示如果$x为真,则使用$y;否则使用$z".

means "if $x is true, then use $y; otherwise use $z".

它也有一个简短的形式.

It also has a short form.

$x ?: $z

表示如果$x为真,则使用$x;否则使用$z".

means "if $x is true, then use $x; otherwise use $z".

人们会告诉你 ?: 是三元运算符".这是错误的.?: 是 a 三元运算符,也就是说它有三个操作数.人们最终认为它的名字是三元运算符",因为它通常是给定语言唯一的三元运算符.

People will tell you that ?: is "the ternary operator". This is wrong. ?: is a ternary operator, which means that it has three operands. People wind up thinking its name is "the ternary operator" because it's often the only ternary operator a given language has.

相关文章