【发布时间】:2017-08-11 11:53:13
【问题描述】:
我有一个变量:$a。我不知道那是什么。我想看看能不能数出来。通常,只有数组,我可以这样做:
if (is_array($a)) {
echo count($a);
}
但其他一些事情是可数的。假设 Illuminate\Support\Collection 在 Laravel 中是可数的:
if ($a instanceof \Illuminate\Support\Collection) {
echo count($a);
}
但是有没有什么可以同时做这两件事(也许可以与其他一些可数的实例一起工作)。比如:
if (is_countable($a)) {
echo count($a);
}
这种功能存在吗?我错过了什么吗?
【问题讨论】:
-
也许是stackoverflow.com/questions/12346479/… ?与
$var instanceof Countable -
@Scuzzy 的方式是一个好的开始,也许值得尝试看看是否可以遍历:php.net/manual/en/class.traversable.php
-
好消息。看起来 PHP 7.3 的目标是为此 wiki.php.net/rfc/is-countable 提供内置函数
标签: php arrays laravel laravel-collection