PHP修改多维数组中的某个值

法子 发布于 2013/08/08 17:44
阅读 7K+
收藏 1
PHP

现有下面的数组,

$data = array (
  array (
    'entity_id' => '880',
    'sku' => '100088',
    'name' => 'Tablet PC 512MB RAM 8GB Memory Wi-Fi Camera(Black)',
    'price' => '117.8300',
    'item' => array (
      array (
        'attribute_id' => '103',
        'frontend_label' => 'Meta Title',
        'value' => NULL,
      ),
      array (
        'attribute_id' => '972',
        'frontend_label' => 'Features',
        'value' => '131,201,129',
      ),
      array (
        'attribute_id' => '992',
        'frontend_label' => 'Battery capacity',
        'value' => '5500mAh',
      ),
    ),
  ),
)

怎样修改attribute_id = 972的value值呢,把131,201,129换成其它的值。谢谢!

加载中
0
法子
法子

引用来自“心翔”的答案

foreach($data as &$item){
 foreach($item['item'] as &$v){
   if($v['frontend_label']== 'Features')
   $v['value'] = '123,123,123'; 
 } 
}

谢谢,成功了
1
itviewer
itviewer
foreach($data as &$item){
 foreach($item['item'] as &$v){
   if($v['frontend_label']== 'Features')
   $v['value'] = '123,123,123'; 
 } 
}

G.
G.
如果能确保只修改一个, 那么修改完后要跳出循环.
0
小虫0302
小虫0302

foreach ($data['item'] as $k => $v){

    if($v['attribute_id'] == 972){

       $data['item'][$k]['value'] = '131,201,129';

   }

}

54mark
54mark
+1
0
bigtiger02
bigtiger02
若数组确定:
$data['item'][2]['value']='131,201,129';
若数组不确定:
foreach($data['item'] as $k=>$v){
  if($v['attribute_id'] == '972'){
      $data['item'][$k]['value']='131,201,129';
  }
}
0
徐迎龙
徐迎龙
没有@我,看看就走
0
法子
法子

引用来自“祺爸PiscDong”的答案

看错了
其实我是想改  Features 所在数组的 value 值的
0
星星爷
星星爷
我不会php  看了看 还是走吧
0
法子
法子

引用来自“星迷”的答案

我不会php  看了看 还是走吧
谢谢光临
0
法子
法子

引用来自“xiaochong0302”的答案

foreach ($data['item'] as $k => $v){

    if($v['attribute_id'] == 972){

       $data['item'][$k]['value'] = '131,201,129';

   }

}

3q
返回顶部
顶部