Slide 72
Slide 72 text
72
イテレーションの遅延処理
function filesInDir($directory, $fileExtension) {
$directory = realpath($directory);
$it = new RecursiveDirectoryIterator($directory);
$it = new RecursiveIteratorIterator($it,
RecursiveIteratorIterator::LEAVES_ONLY);
$it = new RegexIterator($it,
'(\.'.preg_quote($fileExtension).'$)');
foreach ($it as $file) {
$fileName = $file->getPathname();
yield $fileName => file_get_contents($fileName);
}
}