輕鬆將PHP 物件轉換為關聯數組
與利用物件導向結構的API 整合時,有必要轉換這些物件到關聯數組中以與現有程式碼相容。以下是在PHP 中實現此轉換的簡單有效的方法:
解決方案:類型轉換
只需將物件類型轉換為陣列即可將其轉換為關聯數組,其鍵為關聯數組是物件的屬性名稱。
$array = (array) $yourObject;
此類型轉換不執行深度轉換,因此如果該物件包含巢狀對象,它們不會轉換為陣列。但是,它適用於具有公共屬性的物件或簡單的 StdClass 物件。
複雜物件和屬性可訪問性
對於更複雜的對象,類型轉換可能不會給您想要的結果。 PHP 對於存取類型化陣列中的非公有屬性有特定的規則:
範例:
class Foo { private $foo; protected $bar; public $baz; } var_dump((array) new Foo());
輸出:
array(3) { ["Foofoo"] => int(1) ["*bar"] => int(2) ["baz"] => StdClass Object ( ... ) }
深度鑄造和其他資源
如果您需要物件圖的深度轉換或需要更多了解此轉換技術,請考慮參考以下資源:
以上是如何輕鬆地將 PHP 物件轉換為關聯數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!