如 https://bugs.php.net/bug.php?id=55701 中所述,count() 方法可能导致错误。
例如,如果在目标目录中找不到任何文件,则以下代码将无法正常工作
<?php
$iterator = new \GlobIterator($ftpDirectory . '/*.*', FilesystemIterator::KEY_AS_FILENAME);
if($iterator->count()) {
foreach($iterator as $filePath) {
// 执行某些操作 ...
}
}
?>
解决此错误的变通方法可能是
<?php
foreach(new \GlobIterator($ftpDirectory . '/*.*', FilesystemIterator::KEY_AS_FILENAME) as $filePath) {
// 执行某些操作 ...
}
?>