除了执行迭代关联数组的实际工作,将值推入新数组并将其设置为等于剩余字段数组之外,是否有一个内置于PHP中的数组函数可以执行类似的操作?
如果是的话,它是什么?
我会改变以下内容:
array(
[0] => array(
[created] => 12512512,
[name] => something
)
)
这样的事情:
array(
[12512512] => array(
[created] => 12512512,
[name] => something
)
)
答案 0 :(得分:1)
如果第一个数组是$ a
foreach ($a as $v){
$newarray[$v['created']] = $v;
}
答案 1 :(得分:1)
我不知道你真正想做什么......也许这可以帮助你
<?php
$new = array();
foreach($oldArr as $arr) {
$new[$arr['created']] = $arr;
}
print_r($new);
?>
答案 2 :(得分:1)
翻转该值并删除同一个数组中的旧值...如果创建的值不会覆盖其中一个现有条目,这应该没问题,我非常怀疑,因为created
似乎是一个时间戳。
foreach($myArray as $index => $entry) {
$myArray[$entry['created']] = $entry;
unset($myArray[$index]);
}
或者您可以保留两份副本并使用引用来保存ram。
foreach($myArray as &$entry)
$myArray[$entry['created']] =& $entry;
答案 3 :(得分:-1)
请尝试以下代码
$arrs = array();
$arrs[0]['created'] = 1252;
$arrs[0]['name'] = 'A';
$narrs = array();
foreach($arrs AS $arr){
$narrs[$arr['created']]['created'] = $arr['created'];
$narrs[$arr['created']]['name'] = $arr['name'];
}
echo "<pre>";
print_r($narrs); echo "</pre>";
感谢