1. 判断数组中是否存在指定键
php中有两个函数用来判断数组中是否包含指定的键,分别是array_key_exists和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)."\n"); print("Is '1' defined? ".array_key_exists("1", $array)."\n"); print("Is 'Two' defined? ".isset($array["Two"])."\n"); print("Is '2' defined? ".isset($array[2])."\n"); ?>
返回结果如下:
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数组根据值获取键名功能,主要有两个内置函数可以使用。array_search 和 array_keys,用于处理返回单个键名和多个键名。
具体范例如下:
<?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 ) */ ?>
以上是php数组中键(key)使用方法的详细内容。更多信息请关注PHP中文网其他相关文章!