echoou 发布的文章

  • 使用函数array_diff_assoc()
  • 定义和用法

array_diff_assoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名和键值。

  • 语法
array_diff_assoc(array1,array2,array3...);
参数描述
array1必需。与其他数组进行比较的第一个数组。
array2必需。与第一个数组进行比较的数组。
array3可选。与第一个数组进行比较的其他数组。
  • 实例
<?php
// 实例1
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_diff_assoc($a1,$a2);
print_r($result);
?>

输出

Array ( [b] => green [c] => blue )
<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"red","f"=>"green","g"=>"blue");
$a3=array("h"=>"red","b"=>"green","g"=>"blue");

$result=array_diff_assoc($a1,$a2,$a3);
print_r($result);
?>

输出

Array ( [c] => blue [d] => yellow )

使用函数array_diff()

  • 定义语用法

array_diff() 函数用于比较两个(或更多个)数组的键值,并返回差集。该函数比较两个(或更多个)数组的键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键值。

  • 语法
array_diff(array1,array2,array3...);
参数描述
array1必需。与其他数组进行比较的第一个数组。
array2必需。与第一个数组进行比较的数组。
array3可选。与第一个数组进行比较的其他数组。
  • 实例
<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"black","g"=>"purple");
$a3=array("a"=>"red","b"=>"black","h"=>"yellow");
 
$result=array_diff($a1,$a2,$a3);
print_r($result);
?>

输出

Array ( [b] => green [c] => blue )

  • 定义和用法

array_count_values() 函数用于统计数组中所有值出现的次数

  • 语法
array_count_values(array)
参数描述
array必需。规定需要统计数组中所有值出现次数的数组。
  • 实例
<?php
$a=array("A","Cat","Dog","A","Dog");
print_r(array_count_values($a));
?>
输出

Array ( [A] => 2 [Cat] => 1 [Dog] => 2 )

  • 定义和用法

array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组元素为键名,另一个数组的元素为键值。
注释:键名数组和键值数组的元素个数必须相同!

  • 语法

array_combine(keys,values);
参数|描述

keys必需。规定数组的键名。
values必需。规定数组的键值。
  • 实例
<?php
$fname=array("Peter","Ben","Joe");
$age=array("35","37","43");

$c=array_combine($fname,$age);
print_r($c);
?>

输出

Array ( [Peter] => 35 [Ben] => 37 [Joe] => 43 )

使用函数 array_column()

  • 定义和用法

array_column() 返回输入数组中某个单一列的值

  • 语法
    array_column(array,column_key,index_key);
参数描述
array必需。指定要使用的多维数组(记录集)
column_key必需。需要返回值的列。可以是索引数组的列的整数索引,或者是关联数组的列的字符串键值。该参数也可以是 NULL,此时将返回整个数组(配合index_key 参数来重置数组键的时候,非常管用)。
index_key可选。作为返回数组的索引/键的列。
  • 实例
<?php
// 可能从数据库中返回数组
$a = array(
  array(
    'id' => 5698,
    'first_name' => 'Peter',
    'last_name' => 'Griffin',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Ben',
    'last_name' => 'Smith',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Joe',
    'last_name' => 'Doe',
  )
);

$last_names = array_column($a, 'last_name');
print_r($last_names);
/*输出
Array
(
  [0] => Griffin
  [1] => Smith
  [2] => Doe
)
*/

?>