Php 当在一行或一个变量中使用时,=和===的含义是什么?

Php 当在一行或一个变量中使用时,=和===的含义是什么?,php,Php,我看到下面显示了一个代码 $selected_value = 'yes' === ( isset( $option['default'] ) ? $option['default'] : 'no' ); 我知道=和===之间的区别,而且上面使用它们的方式对我来说是新的。有人能解释一下吗?如果$option['default']包含“yes”,则$selected\u value设置为true,否则(如果它包含其他内容或不存在)设置为false 三元子句(条件?真返回值:假返回值)要么返回“否”

我看到下面显示了一个代码

$selected_value = 'yes' === ( isset( $option['default'] ) ? $option['default'] : 'no' );

我知道=和===之间的区别,而且上面使用它们的方式对我来说是新的。有人能解释一下吗?

如果
$option['default']
包含“yes”,则
$selected\u value
设置为
true
,否则(如果它包含其他内容或不存在)设置为
false


三元子句(条件?真返回值:假返回值)要么返回“否”,要么返回
$option['default']
的内容。如果该返回值等于
yes
,那么
==
比较的结果将是
true
,否则它将是
false
,它将(
=
)分配相等比较的结果(
==
)。好的,如果(选项['default'])?$option['default的结果是设置($option['default']),那么你是这个意思吗:'no')为'yes',则为$selected_value='yes'=='yes',其中分配给$selected_value的最终值为'yes'。如果$selected_value='yes'='no',则最终值为'no'。我说得对吗?不太对。外部条件是查看字符串“yes”(内容和类型)是否等于三元运算符的结果。因此,如果三元运算符返回“yes”(仅当该选项字符串存在并设置为“yes”时才会返回),则结果将为布尔值“true”,否则将为布尔值“false”<代码>回显“是”==“是”以进行测试。这意味着如果$selected\u value=“是”==“是”,则分配给$selected\u value的最终值为true。如果$selected_value='yes'='no',则最终值为false。对吗?没错。