Array
(
[solar] => Array
(
[0] => sun
[1] => moon
)
[Solargraph] => Array
(
[0] => Array
(
[y] => 89
[url] => sun
)
[1] => Array
(
[y] => 57
[url] => moon
)
)
)
但我需要更改y和url名称,如下所示:
Array
(
[solar] => Array
(
[0] => sun
[1] => moon
)
[Solargraph] => Array
(
[0] => Array
(
[solarvalue] => 89
[solarname] => sun
)
[1] => Array
(
[solarvalue] => 57
[solarname] => moon
)
)
)
foreach($Rows as $key=>$val){
$aUse[] = $val['rt_solargraph'];
foreach($aUse as $key => $value)
{
$aUser['Solargraph'][$key]['SolarValue'] = $value[$key]['y'];
$aUser['Solargraph'][$key]['SolarName'] = $value[$key]['url'];
}
}
请帮帮我修复此问题,因为我是PHP和array的新手.我不知道如何迭代内部数组中的元素.
解决方法:
你可以这样使用:
// initialize array
$newArr = array();
foreach ($yourArr as $key => $value) {
// if $value is array , you can also add Solargraph key check.
if(is_array($value) && $key == 'Solargraph'){
foreach ($value as $mykey => $finalVal) {
// assign values to $newArr
$newArr[$key][$mykey]['solarvalue'] = $finalVal['y'];
$newArr[$key][$mykey]['solarname'] = $finalVal['url'];
}
}
else{
// if not is array store as same
$newArr[$key] = $value;
}
}
echo "<pre>";
print_r($newArr);
结果:
Array
(
[solar] => Array
(
[0] => sun
[1] => moon
)
[Solargraph] => Array
(
[0] => Array
(
[solarvalue] => 89
[solarname] => sun
)
[1] => Array
(
[solarvalue] => 89
[solarname] => sun
)
)
)