php foreach多层嵌套循环,如何改变goods下img的值,比如加个前缀'img'=>'http:xxx/saa.jpg'这样的形式

$tree = array(
'0' => array(
'id'=>'23',
'number'=>'23234234234',
'post'=>'420321987',
'goods' => array(
'0'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'1'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'2'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
),
),
'1' => array(
'id'=>'23',
'number'=>'23234234234',
'post'=>'420321987',
'goods' => array(
'0'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'1'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'2'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
),
)

);

第1个回答  2015-04-25
本人已经调试过OK没问题!
<?
$tree = array(
'0' => array(
'id'=>'23',
'number'=>'44444',
'post'=>'420321987',
'goods' => array(
'0'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds1.jpg'),
'1'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'2'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
),
),
'1' => array(
'id'=>'23',
'number'=>'23234234234',
'post'=>'420321987',
'goods' => array(
'0'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'1'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
'2'=>array('goods_id'=>'22','name'=>'天空中的一朵云','img'=>'sdfds.jpg'),
),
)

);

foreach( $tree as &$v1 )
{
foreach( $v1 as &$v2 ){
if( is_array( $v2 )){
foreach( $v2 as &$v3 )
{
$v3["img"] = "http://".$v3["img"];
}

}

}

}

echo $tree[0]["goods"][1]["img"];

?>本回答被提问者和网友采纳
第2个回答  2015-04-25
问问题还让别人猜你的意思。我猜是要用foreach改原数组内容,你用 as &$img 试下看。
大家正在搜