一段代码
$a=0; var_dump(1 != $a = 1);
按照优先级比,!=比=高,为何输出结果是false,求解答
这个可以看鸟哥 @laruence 的文章。
这里如果严格按照操作符优先级顺序,!=操作以后得到一个不能被赋值的左值,最终会造成语法错误;PHP里有对表达式内赋值的兼容,所以这时是先执行的赋值操作。
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答620 阅读✓ 已解决
802 阅读
1 回答5.2k 阅读
3 回答4k 阅读✓ 已解决
2 回答3.9k 阅读
1 回答1.7k 阅读
4 回答2.8k 阅读
这个可以看鸟哥 @laruence 的文章。
这里如果严格按照操作符优先级顺序,!=操作以后得到一个不能被赋值的左值,最终会造成语法错误;PHP里有对表达式内赋值的兼容,所以这时是先执行的赋值操作。