php索引数组按需处理成关联数组?

WBOY
Freigeben: 2016-06-06 20:24:16
Original
1542 Leute haben es durchsucht

问题可能有些描述的不是很好,我简单举个栗子

<code>//需求
$arr = array('100', '101', '102', '103', '104', '105');
$newArr = array(array('id'=>'100'), array('id'=>'101'), array('id'=>'102'), array('id'=>'103'), array('id'=>'104'), array('id'=>'105'));
//我的处理方式是
$newArr = [];
foreach($arr as $val) {
    $newArr[] = array('id'=>$val);
}
</code>
Nach dem Login kopieren
Nach dem Login kopieren

上述方法可以实现我的需求,还有什么其他方式可以实现?我找到一个内置函数array_chunk($arr, 1, true)但是,这个键名是设置不了的。

回复内容:

问题可能有些描述的不是很好,我简单举个栗子

<code>//需求
$arr = array('100', '101', '102', '103', '104', '105');
$newArr = array(array('id'=>'100'), array('id'=>'101'), array('id'=>'102'), array('id'=>'103'), array('id'=>'104'), array('id'=>'105'));
//我的处理方式是
$newArr = [];
foreach($arr as $val) {
    $newArr[] = array('id'=>$val);
}
</code>
Nach dem Login kopieren
Nach dem Login kopieren

上述方法可以实现我的需求,还有什么其他方式可以实现?我找到一个内置函数array_chunk($arr, 1, true)但是,这个键名是设置不了的。

array_map()函数可以实现你的需求:

<code>$arr = array('100', '101', '102', '103', '104', '105');
function make($v)
{
    return array('id'=>$v);
}

$newArr=array_map('make', $arr);
var_dump($newArr);
//多谢楼下坛友建议
$newArr=array_map(function ($v){return array('id'=>$v);},$arr);</code>
Nach dem Login kopieren

补充下,上面的写法还可以用匿名函数使其更优雅。

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!