个人博客 > 学无止境 > PHP > php 对于数组值重新赋值的问题

php 对于数组值重新赋值的问题

这个问题博主比较尴尬,作为有几年工作经验的程序员居然遇到对数组重新赋值而束手无策,话不多说。

问题:

<?php
foreach($memberlist as &$v) {
	if($v['tagid_list'] == ''){
		$v['tagid_list'] = "无标签";
	}
}
print_r($memberlist);

打印的结果是

array(
0=>array(
name=>'名称',
tagid_list=>
)
1=>array(
name=>'小明',
tagid_list=>100
)
)

这样的修改方法修改的并不是$array本身,是修改它拷贝的一个数组,虽然一样但不是$array.所以对$array没有影响。

解决办法:

<?php
foreach($memberlist as &$v) {
if($v['tagid_list'] == ''){
$v['tagid_list'] = "无标签";
}
}
unset($r);//最后删除掉引用
print_r($memberlist);

打印的结果是

array(
0=>array(
name=>'名称',
tagid_list=>'无标签'
)
1=>array(
name=>'小明',
tagid_list=>100
)
)

完美解决数组重新赋值的问题。

本文出自:琅枫个人博客。如需转载请注明出处!

本文出处:"https://www.phpfeng.cn/learn/php/521.html"

如果您觉得文章对你有帮助,可以进行打赏。
打赏多少,您高兴就行,谢谢您对琅枫博客的支持! ~(@^_^@)~

微信打赏

琅枫博客微信号

支付宝打赏

琅枫博客个人支付宝
本文关键词: 数组 问题 赋值



你想在庞大的互联网上留下一丝足迹?

我不想成为一个庸俗的人。十年百年后,当我们死去,质疑我们的人同样死去,后人看到的是裹足不前、原地打转的你,还是一直奔跑、走到远方的我?

点我了解如何搭建个人博客?