php怎麼讓陣列只保留鍵名

2022-10-12 22:00:50

兩種實現方法:1、使用array_keys()函數獲取陣列全部鍵名,語法「array_keys(陣列)」;如果想要保留指定值的鍵名,則可設定第二和第三引數,語法「array_keys(陣列,指定值,型別是否一致)」。2、利用foreach迴圈和一個空陣列來獲取陣列全部鍵名,語法「foreach($arr1 as $k=>$v){$arr2[]=$k;}」。

php入門到就業線上直播課:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API偵錯工具:

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

php讓陣列只保留鍵名的兩種方法

方法1:使用array_keys()函數獲取陣列全部鍵名

array_keys() 函數可以獲取陣列中的部分或所有鍵名。

array_keys(array,value,strict)
登入後複製
引數描述
array必需。規定陣列。
value可選。您可以指定鍵值,然後只有該鍵值對應的鍵名會被返回。
strict可選。與 value 引數一起使用。可能的值:
  • true - 返回帶有指定鍵值的鍵名。依賴型別,數位 5 與字串 "5" 是不同的。
  • false - 預設值。不依賴型別,數位 5 與字串 "5" 是相同的。

當想獲取全部鍵名時,只需設定第一個引數,將第二和第三個引數省略即可。

範例:

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
var_dump($arr);
$keys=array_keys($arr);
echo "陣列只保留鍵名:";
var_dump($keys);
?>
登入後複製

1.png

如果想要獲取指定值的鍵名,則第二和第三個引數不省略

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array("Name"=>"Peter","Age1"=>"41","Age2"=>41,"Country"=>"USA");
var_dump($arr);
$keys1=array_keys($arr,41);
echo "陣列只保留鍵名:";
var_dump($keys1);
$keys2=array_keys($arr,41,true);
var_dump($keys2);
?>
登入後複製

4.png

方法2:利用foreach迴圈和一個空陣列來獲取陣列全部鍵名

實現思想:

利用foreach迴圈遍歷原陣列的鍵名和鍵值,只將鍵名賦值給空陣列即可。

範例:

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("aaa"=>11,"bbb"=>22,"ccc"=>33);
var_dump($arr1);
$arr2=array();
foreach($arr1 as $k=>$v){
    $arr2[]=$k;
}
echo "陣列只保留鍵名:";
var_dump($arr2);
?>
登入後複製

3.png

推薦學習:《》

以上就是php怎麼讓陣列只保留鍵名的詳細內容,更多請關注TW511.COM其它相關文章!