在PHP中,有時我們需要從一個二維數組中提取一列資料進行處理,這時可以使用PHP內建函數array_column(),它可以輕鬆地將一個二維數組中的某一列提取出來。
語法:array_column(array $input, mixed $column_key[, mixed $index_key])
參數說明:
下面我們來看一個實際的範例:
$students = array(
array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85),
);
// 擷取成績列
$scores = array_column($students, 'score');
print_r($scores);
上述程式碼中,我們有一個$students數組,包含3個學生的資訊。我們使用array_column()函數提取了$students數組中的score列,保存到$scores數組中,然後使用print_r()函數輸出了$scores數組的值。
運行以上程式碼,我們可以看到輸出:
Array
(
[0] => 80 [1] => 90 [2] => 85
)
可以看到,$scores數組中只包含了$students數組中的score列的值,而沒有包含其他列的值。
另外,如果我們想在$scores數組中使用id作為索引key,可以在array_column()函數中傳入第三個參數:
$students = array(
array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85),
);
// 提取成績列,並使用id作為索引key
$scores = array_column($students, 'score', 'id');
print_r($ scores);
輸出結果:
Array
(
[1] => 80 [2] => 90 [3] => 85
)
我們可以看到,$scores數組中每個元素的key都是原始數組中每個學生的id,而數值則是對應的成績。
總結:
在處理二維數組時,PHP內建函數array_column()是一個非常實用的工具,它可以輕鬆地提取目標列,避免了重複寫入循環來查找每個鍵值的繁瑣操作,大幅提高了開發效率。
以上是使用PHP array_column()取得數組列的詳細內容。更多資訊請關注PHP中文網其他相關文章!