CakeFest 2024: The Official CakePHP Conference

GlobIterator::count

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

GlobIterator::countGet the number of directories and files

Descrizione

public GlobIterator::count(): int

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

Elenco dei parametri

Questa funzione non contiene parametri.

Valori restituiti

The number of returned directories and files, as an int.

Esempi

Example #1 GlobIterator::count() example

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

printf("Matched %d item(s)\r\n", $iterator->count());
?>

Il precedente esempio visualizzerà qualcosa simile a:

Matched 8 item(s)

Vedere anche:

add a note

User Contributed Notes 1 note

up
0
TwystO
7 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