为了账号安全,请及时绑定邮箱和手机立即绑定

关于PHP中foreach引用

标签:
PHP C

在了解foreach之前,需要明确 1.PHP是用c语言写的,2.foreach的遍历核心是通过指针来实现。

$arr= [

    [
        'a' => 1,
        'name' => 'cheng1'
    ],
    [
        'id' => 2,
        'name' => 'cheng2'
    ]
];
foreach($arr as $k=>$v)
{
       $v = 'abc';
      //这种情况下是不能改变$v的值,因为foreach 依赖内部数组指针来实现遍历.
      //不明白的了解下指针 
}
//结果一:
$arr= [

    [
        'a' => 1,
        'name' => 'cheng1'
    ],
    [
        'id' => 2,
        'name' => 'cheng2'
    ]
];

foreach($arr as $k=>&$v)
{
       $v = 'abc';
      //加&可以改变$v的值,因为foreach依赖内部数组指针来实现遍历.
      //不明白的了解下指针 
}
//最好unset($v),如果不unset(),再用$v会出现意外哦
//结果二:
$arr= [

    [
        'a' => 1,
        'name' => 'abc'
    ],
    [
        'id' => 2,
        'name' => 'abc'
    ]
];
//对于为什么没有更加详细的说明&可以改变$v,主要要是由于涉及到了c语言的指针,(爱学习的....知道自己接下来要干嘛了吧)
//因此对于PHPer只要知道加&可以改变$v的值就可以了


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消