PHP 8.1.0 Alpha 1 available for testing

GlobIterator::count

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

GlobIterator::count Определяет количество директорий и файлов

Описание

public GlobIterator::count ( ) : int

Определяет количество директорий и файлов, совпадающих с glob-выражением.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Количество директорий и файлов в виде целого числа (int).

Примеры

Пример #1 Пример использования GlobIterator::count()

<?php
$iterator 
= new GlobIterator('*.xml');

printf("Найдено элементов: %d \r\n"$iterator->count());
?>

Результатом выполнения данного примера будет что-то подобное:

Найдено элементов: 8

Смотрите также

  • GlobIterator::__construct() - Создаёт итератор директории, используя glob-выражение
  • count() - Подсчитывает количество элементов массива или чего-либо в объекте
  • glob() - Находит файловые пути, совпадающие с шаблоном

add a note add a note

User Contributed Notes 1 note

up
1
TwystO
4 years ago
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 ...
}
?>
To Top