溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php數(shù)組如何把key轉(zhuǎn)為值

發(fā)布時間:2022-09-30 09:33:30 來源:億速云 閱讀:184 作者:iii 欄目:編程語言

這篇文章主要介紹“php數(shù)組如何把key轉(zhuǎn)為值”,在日常操作中,相信很多人在php數(shù)組如何把key轉(zhuǎn)為值問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php數(shù)組如何把key轉(zhuǎn)為值”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

3種轉(zhuǎn)換方法:1、利用array_flip()交換鍵與值的位置,語法“array_flip(數(shù)組)”;2、利用foreach語句和一個空數(shù)組來交換鍵與值的位置,語法“foreach($arr as $k=>$v){$r[$v]=$k;}”;3、使用array_keys()獲取數(shù)組全部的key(鍵),語法“array_keys(數(shù)組)”,會返回一個包含所有鍵名的數(shù)組。

本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦

情況一:數(shù)組把key(鍵)轉(zhuǎn)為值,可以理解為進行鍵與值的交換。

方法1:利用array_flip()函數(shù)交換數(shù)組鍵與值

array_flip() 函數(shù)用于反轉(zhuǎn)/交換數(shù)組中的鍵名和對應關(guān)聯(lián)的鍵值。

array_flip(array);

參數(shù)描述
array必需。規(guī)定需進行鍵/值對反轉(zhuǎn)的數(shù)組。

返回值:如果反轉(zhuǎn)成功,則返回反轉(zhuǎn)后的數(shù)組;如果反轉(zhuǎn)失敗,則返回 NULL。    

注:我們必須記住,數(shù)組的值必須是有效鍵,即它們必須是整數(shù)或字符串。如果值的類型錯誤,則會拋出警告,并且相關(guān)的鍵/值對將不包含在結(jié)果中。

示例

"red","b"=>"green","c"=>"blue","d"=>"yellow");
var_dump($arr);
$result=array_flip($arr);
echo "交換后:";
var_dump($result);
?>

php數(shù)組如何把key轉(zhuǎn)為值

方法2:利用foreach語句和一個空數(shù)組來交換數(shù)組鍵與值

"a1","b"=>'b1',"c"=>"a2","d"=>"a1");
var_dump($arr);
$res=[];
foreach($arr as $k=>$v){
	$res[$v]=$k;
}

echo "交換后:";
var_dump($arr);
?>

php數(shù)組如何把key轉(zhuǎn)為值

情況一:數(shù)組把key(鍵)轉(zhuǎn)為值,也可以簡單理解將key(鍵)作為元素值保留

可以理解為去除原先值不要,只留下key(鍵)作為元素值。

此時,就需要用到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:全部鍵名

65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
var_dump(array_keys($arr));
?>

php數(shù)組如何把key轉(zhuǎn)為值

示例2:指定值的鍵名

65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
var_dump(array_keys($arr,80));
var_dump(array_keys($arr,"80"));
var_dump(array_keys($arr,"80",true));
?>

php數(shù)組如何把key轉(zhuǎn)為值

方法3:使用array_search() 函數(shù)查詢

array_search() 函數(shù)可以在數(shù)組中搜索指定鍵值,并返回對應的鍵名。

array_search(value,array,strict)

參數(shù)描述
value必需。規(guī)定在數(shù)組中搜索的鍵值。
array必需。規(guī)定被搜索的數(shù)組。
strict可選。如果該參數(shù)被設置為 TRUE,則函數(shù)在數(shù)組中搜索數(shù)據(jù)類型和值都一致的元素??赡艿闹担?ul class=" list-paddingleft-2">
  • true

  • false - 默認

  • 如果設置為 true,則在數(shù)組中檢查給定值的類型,數(shù)字 5 和字符串 5 是不同的(參見實例 2)。
    • 返回值:如果在數(shù)組中找到指定的鍵值,則返回對應的鍵名,否則返回 FALSE。如果在數(shù)組中找到鍵值超過一次,則返回第一次找到的鍵值所匹配的鍵名。    

    1,"name"=>"李華","age"=>23);
    var_dump($arr);
    echo "指定值'李華'對應的鍵名為:".array_search("李華",$arr);
    ?>

    php數(shù)組如何把key轉(zhuǎn)為值

    到此,關(guān)于“php數(shù)組如何把key轉(zhuǎn)為值”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI