首頁  >  文章  >  後端開發  >  php如何選出陣列指定下標

php如何選出陣列指定下標

WBOY
WBOY原創
2023-05-19 10:01:37644瀏覽

在php中,我們可以使用array_column()函數來選擇陣列指定的鍵或下標。這個函數可以取得指定數組的一列,它需要三個參數:原始數組、指定列的鍵名或下標、可選的列鍵或下標。下面我們來看看array_column()函數的用法。

  1. 選擇指定下標的一列

下面的程式碼示範如何使用array_column()函數選擇一個陣列的指定下標列:

$users = array(
    array('name' => '张三', 'age' => 28, 'sex' => '男'),
    array('name' => '李四', 'age' => 29, 'sex' => '女'),
    array('name' => '王五', 'age' => 30, 'sex' => '男')
);

// 选出数组的姓名列
$names = array_column($users, 'name');

print_r($names);

上面的程式碼將輸出以下結果:

Array
(
    [0] => 张三
    [1] => 李四
    [2] => 王五
)

在上面的程式碼中,我們使用array_column()函數選擇了$users數組的'name'下標列,即每個子數組的'name'鍵對應的值。

  1. 選擇指定下標的多列

可以將array_column()函數套用到多列,只需要將要選擇的鍵名或下標包含在一個陣列中即可。下面的程式碼示範如何選擇一個陣列的多列:

$users = array(
    array('name' => '张三', 'age' => 28, 'sex' => '男'),
    array('name' => '李四', 'age' => 29, 'sex' => '女'),
    array('name' => '王五', 'age' => 30, 'sex' => '男')
);

// 选出数组的姓名和性别列
$list = array_column($users, array('name', 'sex'));

print_r($list);

上面的程式碼將輸出以下結果:

Array
(
    [0] => Array
        (
            [name] => 张三
            [sex] => 男
        )

    [1] => Array
        (
            [name] => 李四
            [sex] => 女
        )

    [2] => Array
        (
            [name] => 王五
            [sex] => 男
        )

)

在上面的程式碼中,我們使用array_column()函數選擇了$ users數組的'name'和'sex'下標列,它們被包含在一個數組中。

  1. 選擇多個陣列的指定下標列

可以使用array_column()函數選擇多個陣列的指定下標列,只需要將多個陣列傳遞給函數即可。下面的程式碼示範如何選擇多個陣列的指定下標列:

$users1 = array(
    array('name' => '张三', 'age' => 28, 'sex' => '男'),
    array('name' => '李四', 'age' => 29, 'sex' => '女'),
    array('name' => '王五', 'age' => 30, 'sex' => '男')
);

$users2 = array(
    array('name' => '小明', 'age' => 18, 'sex' => '男'),
    array('name' => '小红', 'age' => 19, 'sex' => '女'),
    array('name' => '小刚', 'age' => 20, 'sex' => '男')
);

// 选出多个数组的姓名列
$names = array_column(array_merge($users1, $users2), 'name');

print_r($names);

上面的程式碼將輸出以下結果:

Array
(
    [0] => 张三
    [1] => 李四
    [2] => 王五
    [3] => 小明
    [4] => 小红
    [5] => 小刚
)

在上面的程式碼中,我們使用array_column()函數選擇了$users1和$users2數組的'name'下標列,它們先合併成一個數組,然後再使用array_column()函數。如果合併的陣列中有相同的下標列名,後面的會逐漸覆蓋前面的值。

總結

array_column()函數是一個非常實用的php數組函數,它可以快速選擇一個數組的指定下標列或多列,以及多個數組的指定下標列。在日常php開發中,特別是在操作資料庫結果集的時候,array_column()函數可以大幅提高程式碼的效率。

以上是php如何選出陣列指定下標的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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