PHP 数组函数

这一节主要说说数组常用函数,数组最常用的莫过于排序、分割、比较等等。


数组的排序函数

在本节中,我们将学习如下 PHP 数组排序函数:

  • sort() - 以升序对数组排序
  • rsort() - 以降序对数组排序
  • asort() - 根据值,以升序对关联数组进行排序
  • ksort() - 根据键,以升序对关联数组进行排序
  • arsort() - 根据值,以降序对关联数组进行排序
  • krsort() - 根据键,以降序对关联数组进行排序

示例:

<?php
echo "<pre>";
//对数组进行升序排序 - sort()
$cars = array("porsche","BMW","Volvo");
sort($cars);
var_dump($cars);
/* 输出结果
array(3) {
  [0]=>
  string(3) "BMW"
  [1]=>
  string(5) "Volvo"
  [2]=>
  string(7) "porsche"
}
*/
//对数组进行降序排序 - rsort()
rsort($cars);
var_dump($cars);
/* 输出结果
array(3) {
  [0]=>
  string(7) "porsche"
  [1]=>
  string(5) "Volvo"
  [2]=>
  string(3) "BMW"
}
*/
//根据值对数组进行升序排序 - asort()
$age=array("Bill"=>"63","Steve"=>"56","Elon"=>"47");
asort($age);
var_dump($age);
/* 输出结果
array(3) {
  ["Elon"]=>
  string(2) "47"
  ["Steve"]=>
  string(2) "56"
  ["Bill"]=>
  string(2) "63"
}
*/
//根据键对数组进行升序排序 - ksort()
ksort($age);
var_dump($age);
/* 输出结果
array(3) {
  ["Bill"]=>
  string(2) "63"
  ["Elon"]=>
  string(2) "47"
  ["Steve"]=>
  string(2) "56"
}
*/
//根据值对数组进行降序排序 - arsort()
arsort($age);
var_dump($age);
/* 输出结果
array(3) {
  ["Bill"]=>
  string(2) "63"
  ["Steve"]=>
  string(2) "56"
  ["Elon"]=>
  string(2) "47"
}
*/
//根据键对数组进行降序排序 - krsort()
krsort($age);
var_dump($age);
/* 输出结果
array(3) {
  ["Steve"]=>
  string(2) "56"
  ["Elon"]=>
  string(2) "47"
  ["Bill"]=>
  string(2) "63"
}
*/
echo "</pre>";
?>


PHP in_array() 函数

in_array() 函数搜索数组中是否存在指定的值。

<?php
$people = array("Bill", "Steve", "Mark", "David");

if (in_array("Mark", $people))
  {
  echo "匹配已找到";
  }
else
  {
  echo "匹配未找到";
  }
?>


PHP array_diff() 函数

array_diff() 函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。

在返回的数组中,键名保持不变。

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

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

提示:可用一个或任意多个数组与第一个数组进行比较。

注释:仅有值用于比较。



上一篇:PHP 数组 下一篇:PHP 全局变量 - 超全局变量