扫码关注官方订阅号
<php function a(){return false;} if(!$b = a()) var_dump($b);
!的优先级应该比=高,!$b是true,然后进行赋值,再回头来判断!$b?所以这个应该怎么理解
人生最曼妙的风景,竟是内心的淡定与从容!
建议你看下官方文档http://www.php.net/manual/zh/...
往下翻一下,可以看到里面有关于这个的说明 :Note:尽管 = 比其它大多数的运算符的优先级低,PHP 仍旧允许类似如下的表达式:if (!$a = foo()),在此例中 foo() 的返回值被赋给了 $a。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
建议你看下官方文档http://www.php.net/manual/zh/...
往下翻一下,可以看到里面有关于这个的说明 :
Note:
尽管 = 比其它大多数的运算符的优先级低,PHP 仍旧允许类似如下的表达式:if (!$a = foo()),在此例中 foo() 的返回值被赋给了 $a。