獲取方法:1、用array_keys()函數(shù),可以獲取全部鍵,語法“array_keys(數(shù)組)”,也可獲取指定值的鍵,語法“array_keys(數(shù)組,值,是否用嚴格模式)”。2、用array_key_first(),可獲取第一個鍵,語法“array_key_first(數(shù)組)”。3、用array_key_last(),可獲取最后一個鍵。4、用key(),可獲取當前元素的鍵。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8版、DELL G3電腦
php獲取數(shù)組key(鍵名)的4種方法
方法1:使用array_keys()函數(shù)獲取一個或多個鍵
array_key() 函數(shù)可以獲取數(shù)組中的部分或所有鍵名(下標),該函數(shù)語法格式如下:
array_keys($array,$search_value,$strict)
參數(shù)說明如下:
- $array:必選參數(shù),為待操作的數(shù)組;
- $search_value:可選參數(shù),如果參數(shù)為空,則函數(shù)會返回數(shù)組中的所有鍵名,如果指定了該參數(shù),則函數(shù)就只會返回值為 $search_value 的鍵名;
- $strict:可選參數(shù),判斷在搜索的時候是否使用嚴格模式,$strict 默認為 false,也就是非嚴格模式,在搜索時只比較類型,不比較類型,若將 $strict 設置為 true,也就是嚴格模式,在搜索時同時比較值和類型,等價于
===
。
array_key() 函數(shù)會以數(shù)組形式返回得到的數(shù)組鍵名。
示例1:全部鍵名
<?php $arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90); var_dump($arr); var_dump(array_keys($arr)); ?>
示例2:指定值的鍵名
<?php $arr=array("Peter"=>65,"Harry"=>80,"John"=>80,"Clark"=>90); var_dump($arr); var_dump(array_keys($arr,80)); var_dump(array_keys($arr,"80")); var_dump(array_keys($arr,"80",true)); ?>
方法2:使用array_key_first()函數(shù)獲取指定數(shù)組的第一個鍵
array_key_first() 函數(shù)用于獲取指定數(shù)組的第一個鍵(key),不會影響到原數(shù)組的內(nèi)部指針。
該函數(shù)語法格式如下:
array_key_first ($array )
返回值:
-
返回 array 的第一個鍵(如果不為空),否則返回 null。
示例:
<?php $arr=array("Peter"=>65,"Harry"=>80,"John"=>80,"Clark"=>90); var_dump($arr); var_dump(array_key_first($arr)); ?>
方法3:使用array_key_last()函數(shù)獲取指定數(shù)組的最后一個鍵
array_key_last() 函數(shù)獲取一個數(shù)組的最后一個鍵(key),不會影響到原數(shù)組的內(nèi)部指針。
array_key_last ($array)
返回值:
-
返回 array 的最后一個鍵(如果不為空),否則返回 null。
示例:
<?php $arr=array("Peter"=>65,"Harry"=>80,"John"=>80,"Clark"=>90); var_dump($arr); var_dump(array_key_last($arr)); ?>
方法4:使用key()函數(shù)獲取當前元素的鍵
key() 函數(shù)可以返回數(shù)組內(nèi)部指針當前指向元素的鍵名,即獲得數(shù)組中當前元素的鍵名。
每個 PHP 數(shù)組內(nèi)部都有一個指針,該指針指向數(shù)組的某個元素,這個被指向的元素就是“當前元素”。
示例:
<?php $info = array( 'name' => '中文網(wǎng)', 'url' => 'http', 'age' => 8, 'desc' => '一個學習編程的網(wǎng)站', 'course' => 'PHP教程' ); for ($i=0,$len=count($info); $i<$len; $i++) { echo key($info) . "<br/>"; //輸出內(nèi)部指針指向的當前元素的鍵 next($info); // 將數(shù)組內(nèi)部指針向后移動一位 } ?>
推薦學習:《PHP視頻教程》