本文實(shí)例講述了PHP實(shí)現(xiàn)通過(guò)二維數(shù)組鍵值獲取一維鍵名操作。分享給大家供大家參考,具體如下:
有如下既定數(shù)組:
$inviteType = [
'掃碼' => [
'type' => 0,
'point' => 5,
],
'評(píng)論' => [
'type' => 1,
'point' => 5,
],
'分享' => [
'type' => 2,
'point' => 10,
],
'邀請(qǐng)' => [
'type' => 3,
'point' => 50,
],
'關(guān)注' => [
'type' => 4,
'point' => 50,
],
'簽到' => [
'type' => 5,
'point' => 5,
],
'完善資料' => [
'type' => 6,
'point' => 50,
],
];
需求:
通過(guò)type里面的鍵值,比如0這個(gè)值,獲取到“掃碼”這個(gè)中文文本,是個(gè)很頭痛的問(wèn)題,最后通過(guò)查找資料,發(fā)現(xiàn)了一個(gè)很好用的方法,可以實(shí)現(xiàn)解決這個(gè)需求:
$arr = array_map('array_shift',$inviteType);
echo "pre>";
print_r($arr);
echo "/pre>";
array_map('array_shift',array)
,該方法的意思是將array的每一項(xiàng)的第一個(gè)鍵值移除,并返回該值,注意此時(shí)的鍵名仍然是array的鍵名,輸出結(jié)果如下:
Array
(
[掃碼] => 0
[評(píng)論] => 1
[分享] => 2
[邀請(qǐng)] => 3
[關(guān)注] => 4
[簽到] => 5
[完善資料] => 6
)
注意!返回的值是每一項(xiàng)的第一個(gè)鍵值,如果將point放在二維數(shù)組第一個(gè),則返回的結(jié)果就是point的值了(適用范圍狹窄),因此實(shí)際使用中需要把指定字段調(diào)整到第一個(gè)!
得到了想要的數(shù)據(jù)了,自然能獲取到相對(duì)的鍵名了:
$type = 0;
$key = array_search($type,$arr);
echo $key;
輸出結(jié)果如下:
掃碼
所以通過(guò)二維數(shù)組的每一項(xiàng)第一個(gè)鍵值獲取一維鍵名可以總結(jié)為下面這行代碼:
array_search('type',array_map('array_shift',$array))
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP數(shù)組(Array)操作技巧大全》、《php排序算法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《php字符串(string)用法總結(jié)》及《PHP常用遍歷算法與技巧總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP實(shí)現(xiàn)二維數(shù)組(或多維數(shù)組)轉(zhuǎn)換成一維數(shù)組的常見(jiàn)方法總結(jié)
- php利用array_search與array_column實(shí)現(xiàn)二維數(shù)組查找
- PHP實(shí)現(xiàn)二維數(shù)組按照指定的字段進(jìn)行排序算法示例
- php二維數(shù)組按某個(gè)鍵值排序的實(shí)例講解
- PHP實(shí)現(xiàn)二維數(shù)組中的查找算法小結(jié)
- PHP實(shí)現(xiàn)一維數(shù)組與二維數(shù)組去重功能示例
- PHP簡(jiǎn)單實(shí)現(xiàn)二維數(shù)組的矩陣轉(zhuǎn)置操作示例
- PHP簡(jiǎn)單實(shí)現(xiàn)二維數(shù)組賦值與遍歷功能示例
- PHP二維數(shù)組分頁(yè)2種實(shí)現(xiàn)方法解析