0
我从来没有使用下列一种表达式的if语句或其他控制结构(例如PHP):表达的控制语句
if (($p = someFunction()) !== false) {
// Use $p
}
我通常采取这种赋值表达式出来,并把它评估在我在if语句中检查之前。
我的问题是:
- 是否有一个名称为这种技术?
- 转让后($ p = someFunction())可以测试哪些类型? (例如,只有true/false或someFuntion返回的实际类型)?
- 这是reccomended和安全使用大多数语言,并期望类似的行为?
供您参考:[PHP类型比较表](http://php.net/manual/en/types.comparisons.php)。 – ladaghini
@ladaghini哇,这些都是要记住的大表;) – zaf
请注意,当使用严格等号运算符('==='和'!==')时,条件表达式必须仔细编码。正如我给出的链接所示,'1 === TRUE'将评估为'FALSE',尽管1具有“真值”值。 '==='和'!=='不测试“真实性”;他们测试相同类型内的平等。如果你想休息一个值的真实性,试试'echo !! $ value'。其他编程语言的真实性表可能不同。 – ladaghini