phpday 2025 - Call For Papers

is_countable

(PHP 7 >= 7.3.0, PHP 8)

is_countable 验证变量内容是否为可数值

说明

is_countable(mixed $value): bool

验证变量的内容是数组还是实现了 Countable 接口的对象

参数

value

需要检查的值

返回值

如果 value 是可数值,返回 true,否则返回 false

更新日志

版本 说明
7.3.0 is_countable() 被添加。

示例

示例 #1 is_countable() 示例

<?php
var_dump
(is_countable([1, 2, 3])); // bool(true)
var_dump(is_countable(new ArrayIterator(['foo', 'bar', 'baz']))); // bool(true)
var_dump(is_countable(new ArrayIterator())); // bool(true)
var_dump(is_countable(new stdClass())); // bool(false)

参见

添加备注

用户贡献的备注 3 notes

up
46
info at arisendrake dot de
6 years ago
If you are unable to upgrade to PHP 7.3 (not released at the time of writing), you can use this simple polyfill:

<?php
if (!function_exists('is_countable')) {
function
is_countable($var) {
return (
is_array($var) || $var instanceof Countable);
}
}
?>
up
2
renic
5 years ago
be wary of using is_object($var) and assuming that the object has implemented Countable. Not all objects are countable directly with count().
up
1
danmichaelo at gmail dot com
5 years ago
Note that a polyfill for this method is also provided by the symfony/polyfill project.
To Top