首頁  >  文章  >  後端開發  >  PHP 物件、陣列間的轉換

PHP 物件、陣列間的轉換

巴扎黑
巴扎黑原創
2016-11-23 13:35:10856瀏覽

/**

 * PHP 物件、陣列間的轉換

 *

 * @author flyer0126

 * @since **/


// 1. 利用(array)和(object),簡單處理

$objTemp = (object)array();

$objTemp = (object)array();

$- 1 ;

$objTemp->b = 2;

$objTemp->c = 3;

$arrTemp = (array)$objTemp;

print_r($objTemp);


 /**

stdClass 物件

(

    [a] => 1

    [b] => 2

    [c] => 3333333353() ] => ; 1

    [b] => 2

    [c] => 3

)

**/

// PS:簡單的(array)和(object)只能處理單層的數據,對於多層的陣列和物件轉換則無能為力。

// 2. 多維數組與物件間的轉換處理


/**

 * 將物件轉換為多維陣列

 *

 **/


function objectToArray($m

// Gets the properties of the given object

// with get_object_vars function

$d = get_object_vars($d);

/*

* Return array converted to object

* Using __FUNCTION__ (Magic constant)

* for recursive call

*/

* for recursive call

*/

// Return array

return $d;

}

}

 

/**

 * 將多維陣列轉換為物件

 *

 **/

function arrayToObject($d) {

* Return array converted to object

* Using __FUNCTION__ (Magic constant)

* for recursive call

*/

return (objursive call

*/

return (objursive) array_map( */

)

/ / Return object

return $d;

}

}

// Useage:

>bar = new stdClass;

$init->bar->baaz = "Testing";

$init->bar->fooz = new stdClass;

$init->bar->fooz->baz = " Testing again";

$init->foox = "Just test";

// Convert array to object and then object back to array

$ arrayToObject($array);


// Print objects and array

print_r($init);

print_r($array); #&*/

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn