我有一个内部有多个数组的数组。 我正在尝试更改密钥[“517f467ca2ec9”] [“517f467ca310c”] ...但是假设我不知道数组密钥文本,我使用下面的代码片段给了我一个错误未定义的偏移量:1
array(74) {
[0]=>
array(9) {
["517f467ca2ec9"]=>
string(0) ""
["517f467ca310c"]=>
string(0) ""
["517f467ca321a"]=>
string(0) ""
["517f467ca3320"]=>
string(0) ""
["517f467ca3427"]=>
string(0) ""
["517f467ca352a"]=>
string(0) ""
["517f467ca3666"]=>
string(0) ""
["517f467ca378d"]=>
string(0) ""
["517f467ca3897"]=>
string(0) ""
}
[1]=>
array(9) {
["517f467ca2ec9"]=>
string(0) ""
["517f467ca310c"]=>
string(0) ""
["517f467ca321a"]=>
string(0) ""
["517f467ca3320"]=>
string(0) ""
["517f467ca3427"]=>
string(0) ""
["517f467ca352a"]=>
string(0) ""
["517f467ca3666"]=>
string(0) ""
["517f467ca378d"]=>
string(0) ""
["517f467ca3897"]=>
string(0) ""
}
php代码段
foreach ($rows as $k=>$v){
$rows[$k] ['running_days'] = $rows[$k] [0];
unset($rows[$k][0]);
}
答案 0 :(得分:2)
请尝试此代码,它会帮助您
function changeKey(&$data)
{
foreach ($data as $key => $value)
{
// Convert key
$newKey = 'any'; // new key goes here
// Change key if needed
if ($newKey != $key)
{
unset($data[$key]);
$data[$newKey] = $value;
}
// Handle nested arrays
if (is_array($value))
{
changeKey($data[$key]);
}
}
}
$test = array('foo' => 'bar', 'moreFoo' => array('more' => 'foo'));
changeKey($test);
print_r($test);
答案 1 :(得分:1)
看来你有多维数组。你可以尝试一下......
// array container
$records = 'Your array with key here';
// init new array container
$myarray = array();
foreach ($records as $items) {
foreach ($items as $k => $v) {
$myarray[$k]['running_days'] = $v;
}
}
printr_r($myarray);
答案 2 :(得分:0)
$rows[$k]['running_days'] = array_shift($rows[$k]);