首页 » PHP教程 » phpkey取value技巧_PHP中实现key value映射

phpkey取value技巧_PHP中实现key value映射

访客 2024-10-24 0

扫一扫用手机浏览

文章目录 [+]

1. foreach

这是最随意马虎想到的方法

phpkey取value技巧_PHP中实现key value映射

2. array_map

phpkey取value技巧_PHP中实现key value映射
(图片来自网络侵删)

将用户自定义函数浸染到数组中的每个值上,并返回用户自定义函数浸染后的带有新值的数组,也可以实现

3. array_column

将二维数组转为一维数组

Demo Test

假设有如下数组构造:

$userInfo = array(

array(

'id' => 5698,

'first_name' => 'Bill',

'last_name' => 'Gates',

),

array(

'id' => 4767,

'first_name' => 'Steve',

'last_name' => 'Jobs',

),

array(

'id' => 3809,

'first_name' => 'Mark',

'last_name' => 'Zuckerberg',

)

);

现在需求是获取以id为key,first_name为value的数组,以下是三种实现:

$temp = [];

foreach($userInfo as $user){

$temp[$user['id']] = $user['first_name'];

}

$tempM =[];

array_map(function($user) use (&$tempM) {

$tempM[$user['id']] = $user['first_name'];

}, $userInfo);

$tempN = [];

$tempN = array_column($userInfo, 'first_name', 'id');

其结果都是:

array(3) {

[5698]=> string(4) \公众Bill\"大众

[4767]=> string(5) \公众Steve\"大众

[3809]=> string(4) \"大众Mark\"大众

}

末了

1. 从效率上来说:foreach与array_column速率在一个数量级上,基本相同,array_map要比其他两个慢一个数量级

2. 从灵巧度来说:foreach在处理多维数组时,更灵巧

标签:

相关文章

执业药师试卷代码解码药师职业发展之路

执业药师在药品质量管理、用药安全等方面发挥着越来越重要的作用。而执业药师考试,作为进入药师行业的重要门槛,其试卷代码更是成为了药师...

PHP教程 2025-02-18 阅读1 评论0

心灵代码主题曲唤醒灵魂深处的共鸣

音乐,作为一种独特的艺术形式,自古以来就承载着人类情感的表达与传递。心灵代码主题曲,以其独特的旋律和歌词,唤醒了无数人的灵魂深处,...

PHP教程 2025-02-18 阅读1 评论0

探寻福建各市车牌代码背后的文化内涵

福建省,地处我国东南沿海,拥有悠久的历史和丰富的文化底蕴。在这片充满魅力的土地上,诞生了许多具有代表性的城市,每个城市都有自己独特...

PHP教程 2025-02-18 阅读1 评论0

探寻河北唐山历史与现代交融的城市之光

河北省唐山市,一座地处渤海之滨,拥有悠久历史和独特文化的城市。这里既是古丝绸之路的起点,也是中国近代工业的发源地。如今,唐山正以崭...

PHP教程 2025-02-18 阅读1 评论0