首页 » Web前端 » phpkeyvalue变量技巧_PHP中实现key value映射

phpkeyvalue变量技巧_PHP中实现key value映射

访客 2024-12-08 0

扫一扫用手机浏览

文章目录 [+]

1. foreach

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

phpkeyvalue变量技巧_PHP中实现key value映射

2. array_map

phpkeyvalue变量技巧_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怎么提交信息技巧_php的文件上传

这里首先声明一下这一章的内容比较多,比较难,你要抱着和自己去世磕的态度。细微之处不放过,多敲多练是王道。 学习就像爬山,得一步一步...

Web前端 2024-12-10 阅读0 评论0