6.5.2 PHP数组中和键值搜索相关的函数1
数组的键/值操作函数
array_values -- 返回数组中所有的值
格式:array array_values ( array input )
$a = array("name"=>"张三","age"=>20,"sex"=>"男");
$values = array_values($a);
var_dump($values);
//array(3){[0]=>string(4)"张三" [1]=>int(20) [2]=>string(2)"男"}
array_keys -- 返回数组中所有的键名
格式:array array_keys(array input[,mixed search_value [,bool strict]])
其中search_value为则只返回该值的键名
$a= array("name"=>"张三","age"=>20,"sex"=>"男");
$keys= array_keys($a);
for($i=0;$i<count($keys);$i++){
echo $keys[$i]." "; //name age sex
}
•in_array -- 检查数组中是否存在某个值
–格式:bool in_array(mixed needle,array haystack [, bool strict] )
–其中strict参数:是否匹配类型
$a= array("name"=>"张三","age"=>20,"sex"=>"男");
if(in_array("张三",$a)){
echo " ‘张三’在\$a数组中"; //”张三“在$a数组中
}
array_flip -- 交换数组中的键和值
格式:array array_flip ( array trans )
$a = array("name"=>"张三","age"=>20,"sex"=>"男");
$b = array_flip($a);
foreach($b as $k=>$v){
echo "$k=>$v "; // 张三=>name 20=>age 男=>sex
}
array_reverse -- 返回一个单元顺序相反的数组
语法:array array_reverse ( array array [, bool preserve_keys] )
如果 preserve_keys 为 TRUE 则保留原来的键名
$a= array("name"=>"张三","age"=>20,"sex"=>"男");
$b = array_reverse($a);
foreach($b as $k=>$v){
echo “$k=>$v ”; // sex=>男 age=>20 name=>张三
}
例 demo.php
<?php
$lamp = array("os"=>"Linux", "webserver"=>"Apache", "ws"=>"Apache", "num"=>10, "aa"=>"10", "db"=>"MySQL", "language"=>"PHP");
print_r($lamp);
echo '<br>';
/*
list($os, $webserver, $db, $language) = array_values($lamp);
echo $os."<br>";
echo $webserver."<br>";
echo $db."<br>";
echo $language."<br>";
*/
// print_r( array_keys($lamp) ); 全部返回所有键名
print_r( array_keys($lamp, 10, true) );