0
if ($opts['width'] == 'fs' || $opts['height'] == 'fs' || $opts['ratio'] == 'fs') {
    var_dump($opts); // result of this see bellow
}

var_dump($opts) 内部(!) if 语句的结果:

array(3) {
   'width' => int(200)
   'height' => int(0)
   'ratio' => int(0)
}

这怎么可能?数组的值都不是(搅拌)fs?

4

1 回答 1

3

因为0 == 'fs'. 请参阅此换算表

PHP 具有===比较值类型的运算符。

对于更广泛的表格:PHP 中的类型杂耍和(严格)大于/小于比较

于 2013-08-24T18:20:58.463 回答