首頁  >  文章  >  後端開發  >  php二維數組的值怎麼拿

php二維數組的值怎麼拿

PHPz
PHPz原創
2023-04-24 14:49:001355瀏覽

在php中,二維陣列可以看做一個陣列中嵌套了另一個陣列。其中,外層數組的key可以是任何類型的數據,而value則是數組。而內層數組的key同樣可以是任何類型的數據,而value則可以是任何類型的數據。在實際開發中,二維數組在許多場合下被廣泛使用。有時候需要拿到二維數組中的值,這時候就需要用到相關函數。

一、訪問二維數組的值

訪問二維數組的值需要依次指定下標,即透過指定外層數組的key和內層數組的key來訪問二維數組中的值。以下是範例:

$arr = array(
    "first" => array(
        "name" => "Tom",
        "age" => 18,
        "gender" => "male"
    ),
    "second" => array(
        "name" => "Jerry",
        "age" => 19,
        "gender" => "female"
    )
);

echo $arr["first"]["name"];

在上述範例中,我們定義了一個二維陣列$arr,其中有兩個元素,分別是「first」和「second」。每一個元素都是一個數組,包含了不同的鍵值對。我們透過指定下標來存取「first」這個元素中「name」這個鍵所對應的值。結果應該是“Tom”。

二、遍歷二維陣列

遍歷二維陣列需要使用循環語句。由於二維數組嵌套了另一個數組,因此我們需要使用兩個循環語句,分別用於遍歷外層數組和內層數組。下面是一個範例:

$arr = array(
    "first" => array(
        "name" => "Tom",
        "age" => 18,
        "gender" => "male"
    ),
    "second" => array(
        "name" => "Jerry",
        "age" => 19,
        "gender" => "female"
    )
);

foreach ($arr as $key1 => $value1){
    echo $key1 . '<br>';
    foreach ($value1 as $key2 => $value2){
        echo $key2 . ': ' . $value2 . '<br>';
    }
    echo '<br>';
}

在上述範例中,我們使用兩個foreach迴圈語句。在外層循環中,$key1指涉的是外層數組中元素的key,而$value1則指代的是外層數組中元素的value(也就是內層數組)。在內層迴圈中,$key2指涉的是內層數組中元素的key,而$value2則指涉的是內層數組中元素的value。最後結果輸出如下:

first
name: Tom
age: 18
gender: male

second
name: Jerry
age: 19
gender: female

三、透過關鍵字找出二維數組的值

在實際的開發中,有時候我們需要對二維數組進行查詢操作。我們可以透過一些內建函數來實現對數組的操作。在這裡,我們將透過array_column()函數來實現對二維數組的操作。

array_column(array $input, mixed $column_key [, mixed $index_key = null])

這個函數的作用是將一個二維陣列依照指定的key取出來,傳回一個一維數組。其中,$input參數為需要處理的二維數組,$column_key參數為需要取出的key,$index_key參數為需要做為新數組的key的key。

下面是一個範例:

$arr = array(
    array("name"=>"Tom", "age"=>18, "gender"=>"male"),
    array("name"=>"Jerry", "age"=>19, "gender"=>"female"),
    array("name"=>"Lucy", "age"=>17, "gender"=>"female")
);

$names = array_column($arr, 'name');
$genders = array_column($arr, 'gender');

print_r($names);
print_r($genders);

在上述範例中,我們定義了一個二維陣列$arr,其中每個元素都包含了「name」、「age」和「gender 」三個key。我們使用array_column()函數來分別取出所有「name」和所有「gender」所對應的值。最後輸出結果如下:

Array
(
    [0] => Tom
    [1] => Jerry
    [2] => Lucy
)

Array
(
    [0] => male
    [1] => female
    [2] => female
)

在開發中,對於二維數組的操作需要根據實際情況進行。掌握這些操作,將有利於我們在開發中的使用。

以上是php二維數組的值怎麼拿的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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