<?php
class Item {
private $data;
public function __construct ($value) {$this->data = $value;}
public function __toString
() {return strval($this->data);} public function isValid() {return $this->data != 666;}
}
function foreach_with_fitler($array, $iterator, $body, $fitler) {
$$iterator = $key;
});
}
$items = array(new Item
(13), new Item
(265), new Item
(666), new Item
(1488));
function FITLER($value) {return $value->isValid();}
foreach_with_fitler($items, '$item', 'echo $item . PHP_EOL;', 'FITLER');
PD9waHAKCmNsYXNzIEl0ZW0gewogcHJpdmF0ZSAkZGF0YTsKIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCAoJHZhbHVlKSB7JHRoaXMtPmRhdGEgPSAkdmFsdWU7fQogcHVibGljIGZ1bmN0aW9uIF9fdG9TdHJpbmcoKSB7cmV0dXJuIHN0cnZhbCgkdGhpcy0+ZGF0YSk7fQogcHVibGljIGZ1bmN0aW9uIGlzVmFsaWQoKSB7cmV0dXJuICR0aGlzLT5kYXRhICE9IDY2Njt9Cn0KCmZ1bmN0aW9uIGZvcmVhY2hfd2l0aF9maXRsZXIoJGFycmF5LCAkaXRlcmF0b3IsICRib2R5LCAkZml0bGVyKSB7CiAgYXJyYXlfd2FsayhhcnJheV9maWx0ZXIoJGFycmF5LCAkZml0bGVyKSwgZnVuY3Rpb24oJGl0ZW0sICRrZXkpdXNlKCRpdGVyYXRvciwgJGJvZHkpewogICAgJCRpdGVyYXRvciA9ICRrZXk7CiAgICBldmFsKCRib2R5KTsKICB9KTsKfQoKJGl0ZW1zID0gYXJyYXkobmV3IEl0ZW0oMTMpLCBuZXcgSXRlbSgyNjUpLCBuZXcgSXRlbSg2NjYpLCBuZXcgSXRlbSgxNDg4KSk7CgpmdW5jdGlvbiBGSVRMRVIoJHZhbHVlKSB7cmV0dXJuICR2YWx1ZS0+aXNWYWxpZCgpO30KCmZvcmVhY2hfd2l0aF9maXRsZXIoJGl0ZW1zLCAnJGl0ZW0nLCAnZWNobyAkaXRlbSAuIFBIUF9FT0w7JywgJ0ZJVExFUicpOwo=