|
1. 判断数组中是否存在指定键 php中有两个函数用来判断数组中是否包含指定的键,分别是和isset array_key_exists语法如下 array_key_exists($key, $array) 如果键存在返回true isset函数语法如下 isset($array[$key]) 如果键存在返回true 演示代码如下: <?php
$array = array("Zero"=>"PHP", "One"=>"Perl", "Two"=>"Java");
print("Is 'One' defined? ".array_key_exists("One", $array)."
");
print("Is '1' defined? ".array_key_exists("1", $array)."
");
print("Is 'Two' defined? ".isset($array["Two"])."
");
print("Is '2' defined? ".isset($array[2])."
");
?>返回结果如下: Is 'One' defined? 1
Is '1′ defined?
Is 'Two' defined? 1
Is '2′ defined? 2. 数组键名的一些使用小技巧 $arr[true] 等价于 $arr[1];$arr[false] 等价于 $arr[0]。 使null做为键名,相当于创建或覆盖一个$arr[null],可以使用$arr[null]或$arr[""]来访问。 使用带小数点的数字作为键名时,键名会自动截取整数部分作为键名。如$arr[123.45]=5,你使用$arr[123.45]或$arr[123]均可以取得键值;用foreach遍历时,使用的是$arr[123]。 $arr[]=5,会在数组$arr后面添加上该元素。 注:数组中键名的为整数或字符串型 3. 数组根据值获取键名 根据值获取键名功能,主要有两个可以使用。 和 ,用于处理返回单个键名和多个键名。 具体范例如下: <?php
/**
* php array get key by value
* php数组根据值获取键名
*/
$items = array(
"banana" => "fruit",
"tomato" => "vegetable",
"lentil" => "bean",
"apple" => "vegetable"
);
//1.返回一个键名,如果值有重复返回第一个键名
$key = array_search('vegetable', $items);
echo $key;//tomato
//2.返回多个键名
$keys=array_keys($items,'vegetable');
print_r($keys);
/*
Array
(
[0] => tomato
[1] => apple
)
*/
?> |