国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP數組式訪問接口ArrayAccess的用法分析

2020-03-22 17:58:16
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP數組式訪問接口ArrayAccess用法,結合實例形式分析了數組式訪問接口ArrayAccess的概念、功能、實現與使用方法,需要的朋友可以參考下

 

本文實例講述了PHP數組式訪問接口ArrayAccess用法。分享給大家供大家參考,具體如下:

PHP ArrayAccess接口又叫數組式訪問接口,該接口的作用是提供像訪問數組一樣訪問對象的能力。

接口摘要如下:

 

ArrayAccess { // 獲取一個偏移位置的值 abstract html' target='_blank'>public mixed offsetGet ( mixed $offset ) // 設置一個偏移位置的值 abstract public void offsetSet ( mixed $offset , mixed $value ) // 檢查一個偏移位置是否存在 abstract public boolean offsetExists ( mixed $offset ) // 復位一個偏移位置的值 abstract public void offsetUnset ( mixed $offset )}

 

例子說明:

 

 ?php* ArrayAndObjectAccess* 該類允許以數組或對象的方式進行訪問* @author 瘋狂老司機class ArrayAndObjectAccess implements ArrayAccess { * 定義一個數組用于保存數據 * @access private * @var array private $data = []; * 以對象方式訪問數組中的數據 * @access public * @param string 數組元素鍵名 public function __get($key) { return $this- data[$key]; * 以對象方式添加一個數組元素 * @access public * @param string 數組元素鍵名 * @param mixed 數組元素值 * @return mixed public function __set($key,$value) { $this- data[$key] = $value; * 以對象方式判斷數組元素是否設置 * @access public * @param 數組元素鍵名 * @return boolean public function __isset($key) { return isset($this- data[$key]); * 以對象方式刪除一個數組元素 * @access public * @param 數組元素鍵名 public function __unset($key) { unset($this- data[$key]); * 以數組方式向data數組添加一個元素 * @access public * @abstracting ArrayAccess * @param string 偏移位置 * @param mixed 元素值 public function offsetSet($offset,$value) { if (is_null($offset)) { $this- data[] = $value; } else { $this- data[$offset] = $value; * 以數組方式獲取data數組指定位置元素 * @access public * @abstracting ArrayAccess * @param 偏移位置 * @return mixed public function offsetGet($offset) { return $this- offsetExists($offset) ? $this- data[$offset] : null; * 以數組方式判斷偏移位置元素是否設置 * @access public * @abstracting ArrayAccess * @param 偏移位置 * @return boolean public function offsetExists($offset) { return isset($this- data[$offset]); * 以數組方式刪除data數組指定位置元素 * @access public * @abstracting ArrayAccess * @param 偏移位置 public function offsetUnset($offset) { if ($this- offsetExists($offset)) { unset($this- data[$offset]);$animal = new ArrayAndObjectAccess();$animal- dog = dog // 調用ArrayAndObjectAccess::__set$animal[ pig ] = pig // 調用ArrayAndObjectAccess::offsetSetvar_dump(isset($animal- dog)); // 調用ArrayAndObjectAccess::__issetvar_dump(isset($animal[ pig ])); // 調用ArrayAndObjectAccess::offsetExistsvar_dump($animal- pig); // 調用ArrayAndObjectAccess::__getvar_dump($animal[ dog // 調用ArrayAndObjectAccess::offsetGetunset($animal[ dog // 調用ArrayAndObjectAccess::offsetUnsetunset($animal- pig); // 調用ArrayAndObjectAccess::__unsetvar_dump($animal[ pig // 調用ArrayAndObjectAccess::offsetGetvar_dump($animal- dog); // 調用ArrayAndObjectAccess::__get? 

 

以上輸出:

 

boolean trueboolean truestring pig (length=3)string dog (length=3)null

 

 

您可能感興趣的文章:

PHP迭代器接口Iterator用法的分析

PHP聚合式迭代器接口IteratorAggregate的用法分析

PHP檢測接口Traversable的用法詳解

 

 

以上就是PHP數組式訪問接口ArrayAccess的用法分析的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 突泉县| 新化县| 玛曲县| 南康市| 蒙自县| 五华县| 杂多县| 许昌县| 屯留县| 德钦县| 武宁县| 乌什县| 辽宁省| 无极县| 西乌珠穆沁旗| 内乡县| 屏山县| 岳池县| 河南省| 靖州| 永定县| 南康市| 寿宁县| 华阴市| 康马县| 繁昌县| 石景山区| 碌曲县| 高尔夫| 方正县| 越西县| 柞水县| 通化市| 阿坝县| 保定市| 桂东县| 南通市| 尤溪县| 阿合奇县| 龙里县| 左权县|