Mrcdh技术博客 Mrcdh技术博客
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Mrcdh

全栈开发小学生
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Mysql

  • PHP

    • PHP curl常见CURLE_SSL_CACERT (60)错误及get,post实例
    • PHP常用注解
    • PhpSpreadsheet操作Excel的基本使用
    • composer常用命令
    • php程序性能优化的一些方法
    • php常用内置函数
    • PHP常用框架伪静态
    • php遍历时发现最后一个元素的值随着遍历变化
    • tp5和laravel常用操作的区别
    • 使用phpword操作word
    • PHP常用扩展
    • PHP常用自定义方法
    • PHP框架
    • php枚举库php-enum的使用
    • php快速接入微信支付宝支付easy-pay
  • Python

  • java

  • Go

  • 数据库

  • C#

  • ElasticSearch

  • Git

  • Gulp

  • Microsoft

  • Linux

  • 其它

  • 技术
  • PHP
mrcdh
2021-08-11

php遍历时发现最后一个元素的值随着遍历变化

造成该问题的原因是之前使用的 & 来遍历元素。

$arr = [1, 2, 3, 4];
foreach($arr as &$v){
    echo $v;
}
// 1, 2, 3, 4

foreach($arr as $v){
    echo $v;
}
// 1, 2, 3, 3
1
2
3
4
5
6
7
8
9
10

原因: $v 的指针没有释放

解决办法


$arr = [1, 2, 3, 4];
foreach($arr as &$v){
    echo $v;
}
// 1, 2, 3, 4

unset($v);

foreach($arr as $v){
    echo $v;
}
// 1, 2, 3, 4
1
2
3
4
5
6
7
8
9
10
11
12
13
#php
上次更新: 2023/09/22, 16:54:32
PHP常用框架伪静态
tp5和laravel常用操作的区别

← PHP常用框架伪静态 tp5和laravel常用操作的区别→

最近更新
01
uniapp常见问题
03-19
02
Vue3项目搭建
12-25
03
使用pnpm的monorepo组织项目
11-01
更多文章>
Theme by Vdoing | Copyright © 2020-2025 Mrcdh | 苏ICP备2020058908号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×