是否有人能够解释以下语句的含义,以及它所指的 php 类型,以便我可以做进一步的研究:
$foo = ($variation_id>0) ? $variation_id : $item_id;
我已经尝试过搜索,但我真的不知道我在搜索什么。
我要找出的是以下语法的名称和含义
?
/:
只是($variation_id>0)
if 语句的简写?
- 我只是偶然发现了条件变量,尽管仍然会感谢一个很好的简单解释。
该结构称为三元结构,简称为 If ... Else
你的片段:
$foo = ($variation_id>0) ? $variation_id : $item_id;
转换为
if($variation_id>0) {
$foo = $variation_id;
} else {
$foo = $item_id;
}
基本上,语法将归结为这样
$variable = (<CONDITION>) ? <TRUE EXPRESSION> : <FALSE EXPRESSION>;
您也可以在一行中组合多个三元结构,但是如果您使用 normal if 会更好,如果这太复杂了。
那是一个三元条件。如果'?'之前左边的条件 是真的,它执行'?'之后的语句 和冒号之前。如果不是,则执行后面的语句。
在英语中,这表示“如果变体 ID 大于零,则使用变体 ID,否则使用项目 ID”
$foo = ($variation_id>0) ? $variation_id : $item_id;
方法
if($variation_id>0)
{
$foo =$variation_id // if true
}
else
{
$foo =$item_id; // if false
}
让我们刹车吧
$foo=($variation_id>0) ? // This is condition
$variation_id : // This value will be populated by variable '$foo' if condition is true
$item_id; // This value will be populated by variable '$foo' if condition is false
被称为三元语句/操作,快捷方式if else
这只是一个快捷方式,如下所示:
假设你有一个功能。
最后你想返回一个值,但如果值为 0 则例外。
所以你会这样做:
return ($value != 0) ? this_will_be_returned_if_true : this_will_be_returned_if_false;
你也可以在变量分配中做到这一点。
图案:
(Bool statement) ? true : false;