PHP 如何二维数组不能只有给值。看下面代码

Array([0]=>Array([id]=>70[name]=>长裙[info]=>长裙[sort]=>0[sid]=>17[brand]=>a:2:{i:0;s:1:... Array
(
[0] => Array
(
[id] => 70
[name] => 长裙
[info] => 长裙
[sort] => 0
[sid] => 17
[brand] => a:2:{i:0;s:1:"1";i:1;s:1:"2";}
[price] =>
)

[1] => Array
(
[id] => 30
[name] => 牛仔裤
[info] => 牛仔裤
[sort] => 1
[sid] => 17
[brand] => a:2:{i:0;s:1:"2";i:1;s:1:"3";}
[price] => a:2:{i:0;s:5:"1 - 3";i:1;s:6:"2 - 50";}
)

[2] => Array
(
[id] => 49
[name] => 衬衫
[info] => 衬衫
[sort] => 1
[sid] => 17
[brand] => a:2:{i:0;s:1:"1";i:1;s:1:"2";}
[price] => a:3:{i:0;s:5:"1 - 3";i:1;s:6:"1 - 10";i:2;s:5:"2 - 4";}
)

[3] => Array
(
[id] => 29
[name] => 连衣裙
[info] => 连衣裙
[sort] => 2
[sid] => 17
[brand] =>
[price] => a:3:{i:0;s:5:"2 - 4";i:1;s:6:"2 - 50";i:2;s:8:"10 - 100";}
)

)
//这是逻辑语句

foreach ($list as $key => $value) {
if (isNullString($value['brand'])) {
$value['brand'] = '其他品牌'; //这里为什么不能给空的brand 变成其他品牌 应该怎么写才可以让$value['brand'] 变成其他品牌

}else{

}
}
展开
 我来答
xiehou_aj
推荐于2016-04-13 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:95
采纳率:100%
帮助的人:39.7万
展开全部
同学,你使用了foreach啊,当然不能直接改变array数组了,而且数组的修改应该是这样的吧:$arr['3']['brand']='名字';帮你修改下了:
foreach ($list as $key => $value) {
if (isNullString($value['brand'])) {
$list[$key]['brand'] = '其他品牌'; //要用键值啊....
}else{

}
}
追问
...  if (isNullString($value['brand'])) {
$value['brand'] = '其他品牌'; //要用键值啊....
pirnt_r($value); //这里输出能看到改变的值,就是能看到效果,不过$list里面没有
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shenmdyw
2015-05-15 · TA获得超过670个赞
知道小有建树答主
回答量:897
采纳率:100%
帮助的人:249万
展开全部
isNullString 是什么函数?干嘛不直接用empty()?
追问
isNullString 就是 empty() 的意思。 就是判断这个数组里面 $value['brand'] 为空的 就等于其他品牌。 现在问题就是 $value['brand'] 我这样赋值无效。 如果我转换成对象数组 $value->brand = 其他品牌就用有。我应该如何不用对象数组直接解决
追答
$list=Array
(
0 => Array
(
'id' => 70,
'name' => '长裙',
'info' => '长裙',
'sort' => 0,
'sid' => 17,
'brand' => 'a:2:{i:0;s:1:"1";i:1;s:1:"2";}',
'price' =>''
)
,3 => Array
(
'id' => 29,
'name' => '连衣裙',
'info' => '连衣裙',
'sort' => 2,
'sid' => 17,
'brand' =>'',
'price' => 'a:3:{i:0;s:5:"2 - 4";i:1;s:6:"2 - 50";i:2;s:8:"10 - 100";}'
)

);
//这是逻辑语句

foreach ($list as $key => $value) {
if (empty($value['brand'])) {
$list[$key]['brand'] = '其他品牌'; //这里为什么不能给空的brand 变成其他品牌 应该怎么写才可以让$value['brand'] 变成其他品牌
}else{
}
}
完全可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式