• 技术文章 >后端开发 >php教程

    PHP学习之foreach循环时加&符号的说明

    little bottlelittle bottle2019-04-20 13:46:05转载2284
    本文主要内容是关于PHP的foreach循环时加&符号的说明,感兴趣的朋友可以了解一下。

    foreach时加&符号:遍历的同时改变原数组即修改数据或者增加数据。


    $arr = ['a', 'b', 'c'];
    foreach ($arr as $key => &$value) {
        $value = $value . '111';
    }
    echo json_encode($arr);      // ["a111","b111","c111"],这里改变了原来数组的值

    使用&可能出现的问题:


    $arr = ['a', 'b', 'c'];
    foreach ($arr as $key => &$value) {
        $value = $value . '111';
    }
     
    foreach ($arr as $key => $value) {
        $value = $value . '222';
    }
    echo json_encode($arr);      // ["a111","b111","b111222222"]

    这是由于在使用赋值引用传递之后没有释放$value的值,所以会影响第二个foreach的使用。可以使用unset($value)释放变量。


    $arr = ['a', 'b', 'c'];
    foreach ($arr as $key => &$value) {
        $value = $value . '111';
    }
    unset($value);     // 释放$value的引用传递
    foreach ($arr as $key => $value) {
        $value = $value . '222';
    }
    echo json_encode($arr);      // ["a111","b111","c111"]

    相关课程:PHP视频教程

    以上就是PHP学习之foreach循环时加&符号的说明的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:博客园,如有侵犯,请联系admin@php.cn删除
    专题推荐:PHP foreach
    上一篇:php学习之连接数据库+日期处理 下一篇:TPshop简介以及各个目录模块介绍
    大前端线上培训班

    相关文章推荐

    • php中foreach语句如何用于数组元素• PHP foreach什么时候复制• foreach用法是什么?• 如何中断forEach循环(详细介绍)• [PHP] foreach循环的引用赋值中出现的问题

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网