實現步驟:1、利用get_object_vars()函數將物件轉為關聯陣列,語法「get_object_vars($object)」,會返回一個由物件屬性組成的關聯陣列;2、利用array_values()函數將關聯陣列轉為索引陣列,語法「array_values($array)」。
php入門到就業線上直播課:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API偵錯工具:
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
在PHP中,可以利用get_object_vars()函數和array_values()函數來將物件轉為索引陣列。
實現步驟:
步驟1:利用get_object_vars()函數將物件轉為關聯陣列
php中把物件轉為陣列的函數是「get_object_vars()」。
get_object_vars()函數用於獲取給定物件的屬性,並返回由物件屬性組成的關聯陣列。但如果物件沒有屬性,則返回 NULL。
語法:
get_object_vars($object)
登入後複製
返回由 obj 指定的物件中定義的屬性組成的關聯陣列。
注意:
在 PHP 4.2.0 之前的版本中,如果在 obj 物件範例中宣告的變數沒有被賦值,則它們將不會在返回的陣列中。而在 PHP 4.2.0 之後,這些變數作為鍵名將被賦予 null 值。
範例:
<?php
class gfg {
public $geeks = 0.02;
public $for = 1;
public $Geeks = "php";
public $GEEKS;
public $e;
}
$example = new gfg;
$arr=get_object_vars($example);
var_dump($arr);
?>
登入後複製
可以看到,get_object_vars()函數會將物件轉為關聯陣列。
步驟2:利用array_values()函數將關聯陣列轉為索引陣列
array_values() 函數可以獲取陣列中所有元素的值,返回包含陣列中所有的值的陣列。(被返回的陣列將使用數值鍵,從 0 開始且以 1 遞增。)
該函數語法格式如下:
array_values($array)
登入後複製
引數 array 為被操作的陣列。
array_values() 函數的作用是返回陣列中所有元素的值,使用起來非常簡單,只有一個必選引數,就可以返回一個包含給定陣列中所有值的陣列,但不保留鍵名。被返回的陣列將使用索引陣列的形式,陣列的索引從 0 開始且以 1 遞增。
範例:將步驟1獲得的關聯陣列轉為索引陣列
array_values($arr)
登入後複製
注:array_values() 函數僅適用於一維陣列,對於多維陣列中第一維度以外的維度沒有效果。
但可通過存取多維陣列中陣列來獲取值:
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(1,2,3,"aa"=>array(4,5,6),7,8,array(9,10));
echo "原關聯陣列:";
var_dump($arr);
$res=array_values($arr["aa"]);
echo "轉換後的陣列:";
var_dump($res);
?>
登入後複製
推薦學習:《》
以上就是php怎麼將物件轉為索引陣列的詳細內容,更多請關注TW511.COM其它相關文章!