php物件轉陣列方法

2020-07-16 10:06:38

php物件轉陣列方法

在php中將物件轉陣列的方法,可以通過使用「get_object_vars()」函數來實現,該函數的語法為「get_object_vars($obj)」,其引數$obj表示為需要轉換的物件,該函數返回值為物件屬性組成的關聯陣列。

get_object_vars說明

get_object_vars ( object $obj ) : array


返回由 obj 指定的物件中定義的屬性組成的關聯陣列。

註:在 PHP 4.2.0 之前的版本中,如果在 obj 物件範例中宣告的變數沒有被賦值,則它們將不會在返回的陣列中。而在 PHP 4.2.0 之後,這些變數作為鍵名將被賦予 NULL 值。

使用範例

<?php
class 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
 )

以上就是php物件轉陣列方法的詳細內容,更多請關注TW511.COM其它相關文章!