<?phpclass genisletilmisDiziNesnesi extends ArrayObject {private $dizi;public function __construct(){if (is_array(func_get_arg(0)))$this->dizi = func_get_arg(0);else$this->dizi = func_get_args();parent::__construct($this->dizi);}public function each($callback){$yineleyici = $this->getIterator();while($yineleyici->valid()) {$callback($yineleyici->current());$yineleyici->next();}}public function haric(){$args = func_get_args();return array_values(array_diff($this->dizi,$args));}public function ilk(){return $this->dizi[0];}public function sira($deger){return array_search($deger,$this->dizi);}public function denetle(){echo print_r($this->dizi, true);}public function son(){return $this->dizi[count($this->dizi)-1];}public function terscevir($uygula=false){if(!$uygula){return array_reverse($this->dizi);}else{$dizi = array_reverse($this->dizi);$this->dizi = $dizi;parent::__construct($this->dizi);return $this->dizi;}}public function shift(){$eleman = array_shift($this->dizi);parent::__construct($this->dizi);return $eleman;}public function pop(){$eleman = array_pop($this->dizi);parent::__construct($this->dizi);return $eleman;}}function yazdir($deger){echo $deger;}$dizi = new genisletilmisDiziNesnesi([1,2,3,4,5,6]);$dizi->each("yazdir");echo "<br>";print_r($dizi->haric(2,3,4));$dizi->denetle();echo $dizi->sira(5);echo "<br>";print_r($dizi->terscevir());print_r($dizi->terscevir(true));echo $dizi->shift();echo "<br>";echo $dizi->pop();echo "<br>";echo $dizi->son();echo "<br>";echo $dizi->ilk();?>
Çıktısı
123456Array([0] => 1[1] => 5[2] => 6)Array([0] => 1[1] => 2[2] => 3[3] => 4[4] => 5[5] => 6)4Array([0] => 6[1] => 5[2] => 4[3] => 3[4] => 2[5] => 1)Array([0] => 6[1] => 5[2] => 4[3] => 3[4] => 2[5] => 1)6125