一、作用:提供像访问数组一样访问对象的能力接口。
二、 方法:
1、offsetExists 检查偏移位置是否存在
2、offsetGet 获取一个偏移位置的值。
3、offsetSet 设置一个偏移位置的值。
4、offsetUnset 删除一个偏移位置的值。
三、代码测试
class ObjArray implements \ArrayAccess
{
private $testData = [
'title' => 'yinzheng'
];
public function offsetExists($key)
{
return isset($this->testData[$key]);
}
public function offsetGet($key)
{
return $this->testData[$key];
}
public function offsetSet($key, $value)
{
$this->testData[$key] = $value;
}
public function offsetUnset($key)
{
unset($this->testData[$key]);
}
}
四、结果
$obj = new \ObjArray();
/**
* 1、获取
* var_dump($obj['title']); //yinzheng
*/
/**
* 2、设置
* $obj['age'] = 32;
* 3、获取
* var_dump($obj['age']); // 32
*/
var_dump($obj);
/*
object(ObjArray)#34 (1) { ["testData":"ObjArray":private]=> array(1) { ["title"]=> string(8) "yinzheng" } }
*/