首頁 >後端開發 >php教程 >如何從 PHP 中的物件數組中提取一列屬性?

如何從 PHP 中的物件數組中提取一列屬性?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-20 09:02:30559瀏覽

How to Extract a Column of Properties from an Array of Objects in PHP?

PHP:從物件陣列中高效提取一列屬性

許多程式設計場景都涉及使用物件數組,其中每個物件可能有多個屬性。有時,需要從每個物件中提取特定屬性以形成單獨的陣列。在 PHP 中,在不借助循環或外部函數的情況下用一行程式碼實現此目標可能很棘手。

一個可能的方法是利用 array_walk() 函數和 create_function。然而,PHP 7.0 及更高版本中提供了更簡單、更優雅的解決方案。

array_column() 來救援

array_column() 函數是在 PHP 7.0 中引入的並允許您從數組數組或物件數組中提取特定列的資料。只需傳入物件數組作為第一個參數,並將所需屬性的名稱作為第二個參數傳遞即可:

<code class="php">$idCats = array_column($cats, 'id');</code>

在此範例中,$idCats 變數現在將包含所有對象的ID 的陣列。貓對象。

7.0 之前的PHP 版本注意事項

如果您使用7.0 之前的PHP 版本,您仍然可以使用array_map() 函數:

<code class="php">$idCats = array_map(function($cat) { return $cat->id; }, $cats);</code>

雖然這個方法稍微冗長一些,但它達到了相同的結果。

透過利用 array_column() 或 array_map(),您可以有效地從數組中提取一列屬性PHP 中的對象,使您能夠簡化程式碼並提高效能。

以上是如何從 PHP 中的物件數組中提取一列屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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