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

首頁 > 語言 > PHP > 正文

PHP實現數組和對象的相互轉換操作示例

2024-05-05 00:07:39
字體:
來源:轉載
供稿:網友

本文實例講述了PHP實現數組和對象的相互轉換操作。分享給大家供大家參考,具體如下:

關于php中想讓對象以數組的形式訪問,這時候就需要使用到get_object_vars()函數了。先來介紹一下這個函數。

官方文檔是這樣解釋的:

array get_object_vars ( object $obj )

返回由 obj 指定的對象中定義的屬性組成的關聯數組。

舉一個栗子:

<?phpclass Point2D {  var $x, $y;  var $label;  function Point2D($x, $y)  {    $this->x = $x;    $this->y = $y;  }  function setLabel($label)  {    $this->label = $label;  }  function getPoint()  {    return array("x" => $this->x,           "y" => $this->y,           "label" => $this->label);  }}// "$label" is declared but not defined$p1 = new Point2D(1.233, 3.445);print_r(get_object_vars($p1));$p1->setLabel("point #1");print_r(get_object_vars($p1));?>

會輸出:

Array
 (
     [x] => 1.233
     [y] => 3.445
     [label] =>
 )
 Array
 (
     [x] => 1.233
     [y] => 3.445
     [label] => point #1
 )

這樣就很好理解了,這個函數就是對象轉數組的關鍵函數。

對象轉數組具體實現

function objectToArray($obj) {  //首先判斷是否是對象  $arr = is_object($obj) ? get_object_vars($obj) : $obj;  if(is_array($arr)) {    //這里相當于遞歸了一下,如果子元素還是對象的話繼續向下轉換    return array_map(__FUNCTION__, $arr);  }else {    return $arr;  }}

數組轉對象具體實現

function arrayToObject($arr) {  if(is_array($arr)) {    return (object)array_map(__FUNCTION__, $arr);  }else {    return $arr;  }}

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 昔阳县| 建昌县| 溧水县| 洛扎县| 池州市| 沈阳市| 铜梁县| 陈巴尔虎旗| 嘉义市| 凤城市| 萝北县| 湘阴县| 遂昌县| 木兰县| 石柱| 九寨沟县| 巢湖市| 合水县| 项城市| 轮台县| 商河县| 剑川县| 迁安市| 鸡东县| 临清市| 托克逊县| 察哈| 新源县| 砚山县| 万山特区| 循化| 翼城县| 甘南县| 镇巴县| 德兴市| 得荣县| 中宁县| 积石山| 元谋县| 赤壁市| 建阳市|