从记录集中取出指定字段的值

  要从记录集中取出指定字段的值我们首先想到的是遍历记录集逐个取出,但是PHP 5.5+提供了内置函数array_column()可以很方便地实现上述需求,使用方法看下面的代码:

<?php
$list = array(
    array(
        'id' => 5698,
        'first_name' => 'Bill',
        'last_name' => 'Gates',
    ) ,
    array(
        'id' => 4767,
        'first_name' => 'Steve',
        'last_name' => 'Jobs',
    ) ,
    array(
        'id' => 3809,
        'first_name' => 'Mark',
        'last_name' => 'Zuckerberg',
    )
);

$lastName = array_column($list, 'last_name');
print_r($lastName);
/********** 输出结果·开始 **********
Array
(
    [0] => Gates
    [1] => Jobs
    [2] => Zuckerberg
)
********** 输出结果·结束 **********/

  除了取出指定字段的值array_column()函数还可以帮我们快速生成哈希表,使用方法看下面的代码:

<?php
$list = array(
    array(
        'id' => 5698,
        'first_name' => 'Bill',
        'last_name' => 'Gates',
    ) ,
    array(
        'id' => 4767,
        'first_name' => 'Steve',
        'last_name' => 'Jobs',
    ) ,
    array(
        'id' => 3809,
        'first_name' => 'Mark',
        'last_name' => 'Zuckerberg',
    )
);

$hash = array_column($list, 'last_name', 'id'); // id字段值作为哈希表键名,last_name字段值作为哈希表键值
print_r($hash);
/********** 输出结果·开始 **********
Array
(
    [5698] => Gates
    [4767] => Jobs
    [3809] => Zuckerberg
)
********** 输出结果·结束 **********/

Copyright © 2024 码农人生. All Rights Reserved