### php ArrayAccess內置接口
php ArrayAccess接口又叫數組式訪問接口,該接口的作用是提供像訪問數組一樣訪問對象的能力。
```
interface ArrayAccess {
public function offsetExists($offset); // 判斷值是的存在
public funtion offsetGet($offset); // 獲取對應的值
public function offsetSet($offset, $value); // 設置對應的值
public function offsetUnset($offset); // 刪除對應的值
}
```
當一個類繼承了ArrayAccess接口。那么這個類的實例,就可以當成數組來訪問。示例:
```
class ObjectArray implements ArrayAccess {
private $arrayData = [
'title' => 'thinkphp'
];
public function offsetExists($key) {
// 用isset 判斷數組元素是否存在,則會觸發該方法
}
public function offsetGet($key) {
// $obj['title'] 用數組的形式獲取對象值,則會觸發該方法
}
public function offsetSet($key, $value) {
// $obj['name'] = 'aaa' 用數組的形式設置對象的值,則會觸發該方法
}
public funtion offsetUnset($key) {
// unset($obj['name']) 用數組的形式刪除對象的值,則會觸發該方法
}
}
```
tp的config類就是繼承了ArrayAccess接口,因此我們在代碼中訪問配置文件,就可以像訪問數組的方式一樣。