• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • is_countable()

    (PHP 7 >= 7.3.0)

    Verify that the contents of a variable is a countable value

    说明

    is_countable(mixed $var): bool

    Verify that the contents of a variable is anarrayor an object implementingCountable

    参数

    $var

    The value to check

    返回值

    ReturnsTRUEif$varis countable,FALSEotherwise.

    更新日志

    版本说明
    7.3.0is_countable()has been added.

    范例

    Example #1is_countable()examples

    <?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)

    参见

    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);
      }
    }
    ?>
    
    be wary of using is_object($var) and assuming that the object has implemented Countable. Not all objects are countable directly with count().
    Note that a polyfill for this method is also provided by the symfony/polyfill project.
    Polyfill written by arisendrake is not quite good. It return FALSE when checking an Simple XML Node but count() works properly on PHP 7.1 and 7.3.
    Better is this one:
    <?php
    if (version_compare(PHP_VERSION, "7.3") < 0 && !function_exists("is_countable")) {
      function is_countable($var): bool
      {
        return (is_array($var) || is_object($var) || is_iterable($var) || $var instanceof Countable);
      }
    }
    ?>
    

    上篇:is_callable()

    下篇:is_double()