我正在从事一个私人项目,我有以下问题。
这就是我所拥有的:
array(3) {
[0]=>
array(2) {
["import_key"]=>
string(2) "id"
["import_value"]=>
string(6) "345412"
}
[1]=>
array(2) {
["import_key"]=>
string(4) "date"
["import_value"]=>
string(10) "21-08-2017"
}
[2]=>
array(2) {
["import_key"]=>
string(4) "name"
["import_value"]=>
string(53) "Psy-Fi shuttle bus Psy-Fi Festival - Schiphol Airport"
}
}
我想要的是, import_key 将被指定为关键字,而 import_value 将被指定为值。
我该怎么做。
很多!
答案 0 :(得分:2)
编辑:在您发表评论后更新
所以在下面你的评论之后是更新后的代码:
$cleanArray = array();
$resultArray = array();
foreach ($array as $sub) {
$cleanArray[$sub["import_key"]] = $sub["import_value"];
}
$resultArray = array($cleanArray['id']=>$cleanArray);
现在使用相同的原始代码,然后将$ cleanArray数组添加到新数组$ resultArray中,该数组从$ cleanArray的'id'值中获取键。
请注意,如果最终在原始$数组中有多组数据,并且有两个或更多id等,则会失败。为了解决这个问题,你需要做一个额外的foreach循环和更多的逻辑
原始回复:
如果我正确理解你的问题,你想迭代数组来得到类似的东西:
Array (
[id] => 345412
[date] => 21-08-2017
[name] => Psy-Fi shuttle bus Psy-Fi Festival - Schiphol Airport
)
为此,我将您的第一个数组设置为一个变量,富有想象力地称为$ array。
然后使用以下函数,上面的输出将作为$ cleanArray返回:
$cleanArray = array();
foreach ($array as $sub) {
$cleanArray[$sub["import_key"]] = $sub["import_value"];
}
这样做会创建一个名为$ cleanArray的空白数组,遍历$ array中的每个索引,然后将值添加到$ cleanArray,作为键/值对。
希望这是你想要的。