您的位置:首页 > 其它

数组中的相关处理函数

2013-12-20 00:28 337 查看
数组的相关处理函数

一.和数组键/值相关的处理函数
1.array_values()
$lamp=array("os"=>"linux","webserver"=>"Apache","db"=>"Mysql");
$arr=array_values($lamp); //输出:array("liunx","Apache","Mysql")
作用传入一个数组,返回一个顺序的索引数组

2.array_keys(array input[,mined search_value[,bool strict]])
参数:第二个参数为可选参数,则只返回该值的键名,否则,input数组中所有的键名都被返回,
第三个参数为全等比较.
作用:返回 input 数组中的数字或字符串的键名
例: $lamp=array("os"=>"linux","webserver"=>"Apache","db"=>"Mysql");
$arr=array_key($lamp); //输出: os webserver db
$arr=array_key($lamp,"Mysql"); //输出: db
$arr=array_key($lamp,"Mysql",true); //输出:db 注意必须是全等于类型要匹配

3.in_array(mixed needle,array haystack[,bool strict]);
作用:在haystack中搜索needle,如果找到则返回TRUE,否则返回FALSE.第三个参数为可选参数
如果为true,则会检查needle的类型和haystack中是否相同
例: $lamp=array("os"=>"linux","webserver"=>"Apache","db"=>"Mysql");
if(in_array("linux",$lamp)){
echo "存在"
}else{
echo "不存在"
}
4.array_key_exists()判定下标在不在数组中,用法和上面一样

5.array_flip() 交换数组中的键和值,参数为数组

6.array_reverse返回排列顺序对调

二.统计数组元素的个数和唯一性的一些函数.

cout()和sizeof()是别名关系;

cout($array,参数2),第二参数为可选参数,(如果数组里面还有数组)0为默认值不检测多维数组,1为检测多维数组,递归的统计子数组的个数.

例: $lamp=array("os"=>"linux","webserver"=>"Apache","db"=>"Mysql",array(1,2,3) );
echo cout($lamp); //结果: 4
enco cout($lamp,1);//结果:8

array_count_values()作用:统计数组中所有的值出现的次数.传入一个数组,返回一个数组;

<php?
$arr = array(1,"hello","world",1,"hello");
print_r(array_count_values($arr));
?>
输出结果:
Array
(
[1]=>2
[hello]=>2
[world]=>1
)

array_unique($arr)作用:移除数组中重复的值.

三. 使用回调函数处理函数的函数

1. array_filter 用回调函数过滤数组中的单元.

$lamp=array(1,2,-3,4,5,6,-7,8,9,10);
$arr=array_filter($lamp,"myFun");
function myFun($n){
if($>0){
return true;
}else{
return false;
}
}

2. array_walk
对数组中每个成员应用用户函数
$lamp=array("os"=>"linux","webserver"=>"Apache","db"=>"Mysql");
array_walk($lamp,"myFun");
function myFun($value,$key){
echo"The key'{$key}' has value '$value'<br>"
}

3. array_map
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: