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

Açıklama

public GlobIterator::count(): int

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

Bağımsız Değişkenler

Bu işlevin bağımsız değişkeni yoktur.

Dönen Değerler

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

Örnekler

Örnek 1 GlobIterator::count() example

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

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

Yukarıdaki örnek şuna benzer bir çıktı üretir:

Matched 8 item(s)

Ayrıca Bakınız

  • GlobIterator::__construct() - Construct a directory using glob
  • count() - Bir dizideki veya bir Countable nesnesindeki eleman sayısını döndürür
  • glob() - Bir kalıpla eşleşen dosya yollarını bulur

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