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.langfujun.top/learn/php/521.html"
如果您觉得文章对你有帮助,可以进行打赏。
打赏多少,您高兴就行,谢谢您对琅枫博客的支持! ~(@^_^@)~
微信打赏

支付宝打赏
