PHP学习笔记(十六)

处理数组的相关函数

见帮助文档

处理数组的函数

直接上代码

<?php
/*1. 统计数组钟所有值出现的次数
 *   array_count_values($array)
 * */
$array=array(1,"hello",1,"world","hello");
print_r(array_count_values($array));//输出每个索引值的个数
//Array ( [1] => 2 [hello] => 2 [world] => 1 )

/*2. 判断数组中是否存在指定键名
 * array_key_exists(1, $array)
 * */
var_dump(array_key_exists(1, $array)) ;

/*3.在数组搜索给定的值,如果成功则返回相应键名 
 * array_search('green', $array1)
 * */
$array1=array(0 =>'blue',1=>'red',2=>'green',3=>'red',4=>15);
var_dump(array_search('green', $array1));
//输出为int 2,即对应键值为2
var_dump(array_search('15', $array1,true));
//第三个参数true为比较值的同时比较数值的类型,如果不同则输出false

/*4.输出数组的元素个数
 * count*/
echo  count($array1);

/*5. 检查数组中是否存在某个值
 *   in_array('red', $array1)
 *  */
var_dump(in_array('red', $array1));
var_dump(in_array('red', $array1),true);
//加个true同时比较类型是否相等

/*6. 吧数组中的值给一些变量
 * list($min,$zhong,$max)=$arr;
 * 注意:只能用于数字索引的数组并假定数字索引从 0开始
 * */
$arr=array(60,80,100);
list($min,$zhong,$max)=$arr;
echo $min;//min的值为60

/*7.对数组进行排序并保持索引关系
 * asort($student)引入第二个参数实现更多功能,具体看api
 * 
 *  */
$student=array(
    'wucanhui'=>60,
    'zhongshuhan'=>100,
    'wucan'=>70
    );
var_dump(asort($student,SORT_STRING));//排序后从低到高
var_dump($student);

/*8. 得到一个顺序相反的数组
 * array_reverse($student) 
 *  */
print_r(array_reverse($student));

/*8.  用回调函数过滤数组的单元
 *array_filter($array3,"odd")
 *具体就是定义一个函数用来过滤数组中的数据,函数名需要用双引号引入 
 * */
$array3=array("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5);
function odd($var){
    return ($var%2==1);
}
echo "<br />";
print_r(array_filter($array3,"odd"));


posted @ 2021-08-20 10:39  Emuaer  阅读(17)  评论(0编辑  收藏  举报