亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中將對象轉數組的方法

發布時間:2020-11-23 15:34:05 來源:億速云 閱讀:129 作者:小新 欄目:編程語言

這篇文章主要介紹了php中將對象轉數組的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

php中將對象轉數組的方法:php中將對象轉數組的方法:首先創建一個PHP示例文件;然后通過“get_object_vars ( object $obj )”函數將對象以數組的形式訪問即可。

php對象轉數組的函數

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

官方文檔是這樣解釋的:

array get_object_vars ( object $obj )

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

舉例:

<?php
class Point2D {
  var $x, $y;
  var $label;
  function Point2D($x, $y)  // Point2D換成__construct
  {
    $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;
  }
}

array_map() 函數將用戶自定義函數作用到數組中的每個值上,并返回用戶自定義函數作用后的帶有新值的數組。

數組轉對象的具體實現:

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

感謝你能夠認真閱讀完這篇文章,希望小編分享php中將對象轉數組的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

醴陵市| 渑池县| 石河子市| 五华县| 比如县| 横山县| 曲水县| 曲麻莱县| 宣汉县| 高安市| 平泉县| 承德县| 迁西县| 龙里县| 襄汾县| 镇坪县| 龙陵县| 乐亭县| 乌拉特前旗| 奈曼旗| 高青县| 竹溪县| 改则县| 土默特右旗| 榕江县| 工布江达县| 龙岩市| 大余县| 辽源市| 曲阳县| 纳雍县| 绥宁县| 偏关县| 秦安县| 竹溪县| 汤原县| 临洮县| 从化市| 江城| 桐柏县| 安达市|