- Output for 8.1.23 - 8.1.33, 8.2.6 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
- Dr. Jekyll Dr. Frankenstein
<?php
class DoctorFilter extends FilterIterator
{
public function accept(): bool
{
$obj = $this->getInnerIterator()->current();
return is_string($obj) && str_starts_with($obj, 'Dr.');
}
}
$people = [
'Dr. Jekyll',
'Mr. Hyde', // This item will be removed
'Dr. Frankenstein',
];
foreach (new DoctorFilter(new ArrayIterator($people)) as $item) {
echo $item.PHP_EOL;
}