首頁  >  文章  >  後端開發  >  php數組中鍵(key)使用方法

php數組中鍵(key)使用方法

伊谢尔伦
伊谢尔伦原創
2017-06-22 17:49:202773瀏覽

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 &#39;One&#39; defined? ".array_key_exists("One", $array)."\n");
print("Is &#39;1&#39; defined? ".array_key_exists("1", $array)."\n");
print("Is &#39;Two&#39; defined? ".isset($array["Two"])."\n");
print("Is &#39;2&#39; defined? ".isset($array[2])."\n");
?>

回傳結果如下:

Is &#39;One&#39; defined? 1
Is &#39;1′ defined?
Is &#39;Two&#39; defined? 1
Is &#39;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_searcharray_keys,用於處理傳回單一鍵名和多個鍵名。
具體範例如下:

<?php
/**
 * php array get key by value
 * php数组根据值获取键名
 */
$items = array(
    "banana" => "fruit",
    "tomato" => "vegetable",
    "lentil" => "bean",
    "apple"  => "vegetable"
);
 
//1.返回一个键名,如果值有重复返回第一个键名
$key = array_search(&#39;vegetable&#39;, $items);
 
echo $key;//tomato
 
//2.返回多个键名
$keys=array_keys($items,&#39;vegetable&#39;);
 
print_r($keys);
/*
Array
(
    [0] => tomato
    [1] => apple
)
*/
?>

以上是php數組中鍵(key)使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn