欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

php 把一个数组的值作为另一个数组的键 有大用

我想将表单字段映射到数据库字段.

我有两个阵列..

一个数组是数据,包含表单字段id作为键,表单字段值作为值.

$data = array("inputEmail"=>"someone@somewhere.com","inputName"=>"someone"... etc

我也有一个我打算用作地图的数组.此数组的键与表单字段相同,值是数据库字段名称.

$map = array("inputEmail"=>"email", "inputName"=>"name"... etc

我想要做的是迭代数据数组,数据键与map键匹配,为数据数组分配一个新键,它是map数组的值.

$newArray = array("email"=>"someone@somewhere.com", "name"=>"someone"...etc

我的问题是怎么样?我已经尝试了很多不同的方式,现在我完全失去了它.

解决方法:

这与foreach循环相当不错

foreach( $data as $origKey => $value ){

// New key that we will insert into $newArray with

$newKey = $map[$origKey];

$newArray[$newKey] = $value;

}

更简洁的方法(消除用于澄清的变量)

foreach( $data as $origKey => $value ){

$newArray[$map[$origKey]] = $value;

}

标签:php,arrays

来源: https://codeday.me/bug/20190714/1454937.html

来自  https://blog.csdn.net/weixin_29663061/article/details/115547303


PHP合并数组,将一个数组的值做为另一个数组的键值来合并

$city为二维数组

$cityid = array_column($city, 'newsid');//array_column提取二维数组中的元素值

$cityname = array_column($city, 'title');

$allid  = array_merge($allid,array_column($city, 'newsid'));//累加数组

$allname  = array_merge($allname,array_column($city, 'title'));

$all = array_combine($allid, $allname);//将$allid的元素值做为新数组的键值,$allname作为元素值



来自 https://www.jianshu.com/p/3d7be0760892



普通分类: