در پکیج شرح دادید برای اینکه چنین کدی را اجرا کنیم :
$myuser = new Users(); $myuser['tabesh'] = 'tabesh@tabesh.com'; $myuser['ali'] = 'ali@ali.com'; $myuser['google'] = 'google.info.com'; echo $myuser['ali'];باید این رابط را پیاده سازی کنیم :
<?php class Users implements ArrayAccess{ private $user; public function __construct(){ $this->user = array(); } public function offsetExists($key){ return isset ($this->user[$key]); } public function offsetGet($key){ return $this->user[$key]; } public function offsetSet($key , $val){ $this->user[$key] = $val; } public function offsetUnset($key){ unset ($this->user[$key]); }این درست . اما بدون این رابط و بدین شکل هم کار میکند :
$myuser = new ArrayObject(); $myuser['tabesh'] = 'tabesh@tabesh.com'; $myuser['ali'] = 'ali@ali.com'; $myuser['google'] = 'google.info.com'; echo $myuser['ali'];پس کارایی این رابط ArrayAccess چیست ؟ اینکه بود و نبودش یکی است .
انگار که نیستی ، چو هستی خوش باش
حکیم عمر خیام
حکیم عمر خیام