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中文網其他相關文章!