• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • GlobIterator::count()

    (PHP 5>=5.3.0,PHP 7)

    Get the number of directories and files

    说明

    publicGlobIterator::count(void) : int

    Gets the number of directories and files found by the glob expression.

    参数

    此函数没有参数。

    返回值

    The number of returned directories and files,as aninteger.

    范例

    Example#1GlobIterator::count()example

    <?php
    $iterator = new GlobIterator('*.xml');
    printf("Matched %d item(s)\r\n", $iterator->count());
    ?>
    

    以上例程的输出类似于:

    Matched 8 item(s)
    

    参见

    • GlobIterator::__construct() Construct a directory using glob
    • count()计算数组中的单元数目,或对象中的属性个数
    • glob()寻找与模式匹配的文件路径
    As stated here https://bugs.php.net/bug.php?id=55701 the count() method can lead to errors.
    For example this won't works if no files are found in the target directory :
    <?php
    $iterator = new \GlobIterator($ftpDirectory . '/*.*', FilesystemIterator::KEY_AS_FILENAME);
    if($iterator->count()) {
      foreach($iterator as $filePath) {
        // do some stuff ...
      }
    }
    ?>
    A workaround to this bug could be :
    <?php
    foreach(new \GlobIterator($ftpDirectory . '/*.*', FilesystemIterator::KEY_AS_FILENAME) as $filePath) {
      // do some stuff ...
    }
    ?>