PHP 数组函数

PHP  array_column()函数是 PHP 中的一个内置函数。 array_column() 函数用于返回输入数组中某单列的值。此函数在 PHP 5.5 中引入。

我们常常可以在数据库查询出来后,如果想获取某列的值时,可以使用该函数。

语法

array_column(array,column_key,index_key); 
参数描述必须/可选
array指定要使用的数组必须
column_key指定数组返回的列必须
index_key如果想返回一个关联数组,这里可以指定返回的键名,具体看下面的例3可选

例子1

<?php
$multi = array( 
 "sid"   => array(  "firstname" => "sid", "country" => "united states of america" ),
 "sonoo" => array(  "firstname"=> "sonoo",  "country"=> "london"  )  
);
$arrcol = array_column($multi, 'firstname');
print_r($arrcol);
?> 

输出:

Array( [0] => sid [1] => sonoo )

例子2

<?php
$record = array(  
      array ('regno' => 101, 'name' => 'sid',  'course' => 'c',  ), 
      array ('regno' => 102,  'name' => 'ajay', 'course' => 'java',  ),
      array ('regno' => 103, 'name' => 'rahul',  'course' => 'php',  ) 
);
$details = array_column($record, 'course');
print_r($details);
?> 

输出:

Array ( [0] => c [1] => java [2] => php )

例子3

返回一个关联数组,这里可以指定返回的键名为id。
<?php
$record = array(     
    array(  'id' => 11,  'name' => 'ajay',  'course' => 'C',  ),
   array(   'id' => 12,  'name' => 'rahul',  'course' => 'PHP',  ),
   array(  'id' => 13,  'name' => 'abhi',  'course' => 'Java', ) 
);
$details = array_column($record, 'course', 'id');
print_r($details);
?>  

输出:

Array ( [11] => c [12] => php [13] => java )

例子4

<?php
function Column($details)
{
    $rec = array_column($details, 'hobby');
    return $rec;
} 
 $details = array( 
     array( 'roll' => 5, 'name' => 'Ashish', 'hobby' => 'Cricket',),
     array( 'roll' => 1, 'name' => 'Ajay', 'hobby' => 'Football', ),
     array( 'roll' => 3, 'name' => 'Abhishek','hobby' => 'Chess', )
);
print_r(Column($details));
?> 

输出:

Array ( [0] => Cricket [1] => Football [2] => Chess )