php - 如何解释大于零的php空数组?
问题描述
当我试图确定一个空数组是否大于 0,但返回 true 时。为什么php空数组大于0?
$a = [];
if (is_array($a) && count($a) > 0) {
die('array');
} elseif ($a > 0) {
die('ok');
}
它的输出'ok',谁能告诉我这是为什么?
解决方案
http://php.net/manual/en/language.operators.comparison.php根据 php 文档,当与数组以外的array
任何其他比较时,总是被认为更大。这就是比较的定义方式。我的猜测是,当比较两个可能是任何类型的变量时,比较规则会强制数组为任何其他类型。type
array
unequal
推荐阅读
- javascript - How can I get the name of a property from inside an object to create a new property name?
- python - 转换mysql查询返回类型
- android - 如何以编程方式将多个 ImageView 添加到 Android 中的 CardView 中?
- python-3.x - H2O 目标平均编码器“帧正在以相同的顺序发送”错误
- google-api - Google Console API 项目的 Google 登录是否有通用 OAuth 2 刷新令牌 URL?
- google-maps - 谷歌地图原生 Ionic v4 - 不显示在 Android 上
- javascript - 未捕获的类型错误:无法设置空错误的属性“onclick”
- java - activity_main、menu、action_setting 无法解析或不是字段
- javascript - d3 - 通过过渡延迟一次显示一个数据节点
- python - 如何自动将文件生成到与我的 colab 笔记本相同的 google drive 文件夹?