3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface FilterInterface { public function filter($value); } class StringTrimFilter implements FilterInterface { public function filter($value) { return trim($value . 111); } public function __invoke($value) { return $this->filter($value); } } $array = array( ' string 1 ', 'string 2', 'string 3 ', ); foreach (new CallbackFilterIterator(new ArrayIterator($array), new StringTrimFilter()) as $value) { var_dump($value); }

preferences:
46.31 ms | 402 KiB | 5 Q