php二維數組如何取到列

PHPz
發布: 2023-04-23 09:18:51
原創
913 人瀏覽過

PHP是一種流行的程式語言,常被用於Web開發。在 PHP 中,陣列是一種非常實用的資料類型,其被廣泛應用於多個場景中。二維數組是一種特殊的數組類型,它由多個數組組成,每個數組都包含固定數量的元素。通常情況下,每個陣列都代表一行,每個元素都代表該行中的一個列。當需要從一個二維數組中取到特定的列時,可以使用 PHP 提供的多個函數和技巧來實現。

方法1:使用 foreach 迴圈

使用 foreach 迴圈遍歷一個二維陣列是一種簡單直接的方式。在循環的過程中,可以使用陣列下標來取到每個陣列中的特定列。例如,以下程式展示如何從一個二維數組中取到特定列。該數組有兩行,分別代表“姓名”和“年齡”,每行中有兩列,分別是“張三”和“李四”的姓名和年齡。

$students = array(
    array("name" => "张三", "age" => 18),
    array("name" => "李四", "age" => 20)
);

foreach($students as $row){
    echo $row["name"] ."的年龄是:".$row["age"]."
"; }
登入後複製

在上述程式中,使用 foreach 迴圈遍歷了 $students 陣列。在每次循環中,$row 包含了目前數組的一個元素,即一個包含了 "name" 和 "age" 兩列的關聯數組。下標 "name" 和 "age" 分別代表了該數組中的兩個列,使用 $row["name"] 和 $row["age"] 就可以分別取到這兩個列了。

方法2:使用 array_column 函數

array_column 函數是 PHP 提供的一個用於取得多維數組中指定列的函數。此函數需要兩個參數,第一個參數是要取出列的原始數組,第二個參數是指定要取出的列的名稱(下標)。

以下程式展示如何使用 array_column 函數從一個二維陣列中取到特定列。此數組與上述程序中的 $students 數組一致。需要取出的欄位是 "name" 欄位。

$names = array_column($students, "name");
print_r($names);
登入後複製

在上述程式中,使用 array_column 函數從 $students 陣列中取出了 "name" 列,然後將其儲存在 $names 陣列中。印出$names 陣列的結果為:

Array ( [0] => 张三 [1] => 李四 )
登入後複製

方法3:使用array_map 函數

array_map 函數是PHP 的另一個非常有用的函數,可以將一個或多個陣列中的元素傳遞給一個回呼函數,並將該函數的回傳值儲存在一個新的陣列中。

以下程式展示如何使用 array_map 函數從一個二維陣列中取到特定列。此數組與上述程序中的 $students 數組一致。需要取出的列是 "age" 列。

$ages = array_map(function($row) { return $row['age']; }, $students);
print_r($ages);
登入後複製

在上述程式中,使用了一個匿名函數來從 $students 陣列中取出 "age" 列。使用 array_map 函數遍歷 $students 數組,每次從數組中取出一行數據,然後調用匿名函數來取出該行中的 "age" 列,最後將得到的結果儲存在 $ages 數組中。列印 $ages 陣列的結果為:

Array ( [0] => 18 [1] => 20 )
登入後複製

總結

以上就是三種從 PHP 二維陣列中取出列的方法。其中,使用foreach 迴圈是最基本的方法,也非常容易理解和掌握;而使用array_column 函數可以快速地取出指定列的所有值,並將其儲存在一個新的陣列中;而使用array_map 函數則非常靈活,可以方便地呼叫自訂的回呼函數來處理每行資料中的某個列。根據具體的情況,可以選擇最適合自己的方法來處理二維數組中的列。

以上是php二維數組如何取到列的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!