PHP實現(xiàn)通過二維數(shù)組鍵值獲取一維鍵名操作示例
本文實例講述了PHP實現(xiàn)通過二維數(shù)組鍵值獲取一維鍵名操作。分享給大家供大家參考,具體如下:
有如下既定數(shù)組:
$inviteType = [
'掃碼' => [
'type' => 0,
'point' => 5,
],
'評論' => [
'type' => 1,
'point' => 5,
],
'分享' => [
'type' => 2,
'point' => 10,
],
'邀請' => [
'type' => 3,
'point' => 50,
],
'關(guān)注' => [
'type' => 4,
'point' => 50,
],
'簽到' => [
'type' => 5,
'point' => 5,
],
'完善資料' => [
'type' => 6,
'point' => 50,
],
];
需求:
通過type里面的鍵值,比如0這個值,獲取到“掃碼”這個中文文本,是個很頭痛的問題,最后通過查找資料,發(fā)現(xiàn)了一個很好用的方法,可以實現(xiàn)解決這個需求:
$arr = array_map('array_shift',$inviteType);
echo "<pre>";
print_r($arr);
echo "</pre>";
array_map('array_shift',array),該方法的意思是將array的每一項的第一個鍵值移除,并返回該值,注意此時的鍵名仍然是array的鍵名,輸出結(jié)果如下:
Array
(
[掃碼] => 0
[評論] => 1
[分享] => 2
[邀請] => 3
[關(guān)注] => 4
[簽到] => 5
[完善資料] => 6
)
注意!返回的值是每一項的第一個鍵值,如果將point放在二維數(shù)組第一個,則返回的結(jié)果就是point的值了(適用范圍狹窄),因此實際使用中需要把指定字段調(diào)整到第一個!
得到了想要的數(shù)據(jù)了,自然能獲取到相對的鍵名了:
$type = 0; $key = array_search($type,$arr); echo $key;
輸出結(jié)果如下:
掃碼
所以通過二維數(shù)組的每一項第一個鍵值獲取一維鍵名可以總結(jié)為下面這行代碼:
array_search('type',array_map('array_shift',$array))
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《php排序算法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《php字符串(string)用法總結(jié)》及《PHP常用遍歷算法與技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
PHP管理依賴(dependency)關(guān)系工具 Composer的自動加載(autoload)
Composer 是PHP的一個包依賴管理工具,類似Ruby中的RubyGems或者Node中的NPM,它并非官方,但現(xiàn)在已經(jīng)非常流行。此文并不介紹如何使用Composer,而是關(guān)注于它的autoload的內(nèi)容吧。2014-08-08
PHP setcookie設(shè)置Cookie用法(及設(shè)置無效的問題)
平時用Session比較多,很少用到Cookie,這次是為了解決Discuz!自動同步登陸不得不用Cookie。2011-07-07
PHP實現(xiàn)提高SESSION響應(yīng)速度的幾種方法詳解
這篇文章主要介紹了PHP實現(xiàn)提高SESSION響應(yīng)速度的幾種方法,結(jié)合實例形式分析了php操作session的機制與提高session響應(yīng)速度的常見操作技巧,需要的朋友可以參考下2019-08-08

