位置: 编程技术 - 正文

深入理解PHP变量的值类型和引用类型(php变量底层实现)

编辑:rootadmin

推荐整理分享深入理解PHP变量的值类型和引用类型(php变量底层实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php变量的基本概念,简述php变量的作用域,深入理解php变量的概念,深入理解php变量分析,深入理解php变量的概念,什么是php变量,深入理解php变量的概念,深入理解php变量的概念,内容如对您有帮助,希望把文章链接给更多的朋友!

在PHP中,大部分变量类型,如字符串,整型,浮点,数组等都是值类型的,而类和对象是引用类型,在使用的时候,需要注意这一点。

看到网友在讨论PHP的&符号,要彻底理解它的用法,就有必要讨论一下变量的两种形式。

PHP的变量在内存中是这样存储的,变量保存的并不直接是值的内容,而是地址。例如:

我们看起来,似乎变量$a直接存储了 1 这个值。而实际情况是,PHP解释器创建了变量$a,将值:1 存入内存中的某个地方,再将值的地址存到变量$a中。

需要取值时,先找到变量$a中的地址,再根据地址找到变量的值。

往下看:

会输出1,PHP解释器会这样完成这一样代码:找到$a中存储的地址,根据地址找到存在内存某个地方的值,输出到屏幕。

看似一行简单的代码,流程却是这样的。

再往下看:

这里的变量$b 做了一个有趣的操作,&符号取出了$a变量中存储的地址,并存储到$b变量。

深入理解PHP变量的值类型和引用类型(php变量底层实现)

那么,如果使用下面代码:

结果也将是输出1,PHP解释器先取出$b中存储的地址,再根据地址找到值。如果我们做下面的操作:

会发现改变$a的值,$b也跟着变了。其实反过来,改变$b的值,$a的值也会跟这变。

到这一步,我们可以确定,变量$a和$b存储了相同的地址,指向的值是一样的。

那么,我们可以得出结论:它们表示的是同一个变量。

进一步总结,可以得出:如果两个变量存储了相同的地址,它们就是同一个变量。

了解了着一些内容,我们开始介绍值类型和引用类型。

我们先看下面的代码:

将$a的值赋给$b,改变$a的值后,$b的值依然不变,也就是说$a和$b是两个不同的变量,指向不同的地址。这种赋值时会创建不同的变量的形式我们称之为值类型。

再看:

同样将$a的值赋给$b,改变$a后,$b也跟着变了,也就是说$a和$b是同一个变量,指向相同的地址。这种赋值时不会创建新的变量的形式我们称之为引用类型。

PHP统计当前在线用户数实例讲解 通常,当访客访问网站时,页面记录用户的cookie信息,当cookie过期即认为用户不在线。本文中我们使用PHP记录访客IP,并在客户端记录cookie及过期时间,

php防止网站被攻击的应急代码 前不久一个网站竟然被攻击,数据库被刷掉了,幸好客户机器上有数据库备份。遇到这么严重的问题,必须抓紧找出漏洞,防止再次被攻击。各方面检

php解析url并得到url中的参数及获取url参数的四种方式 下面一段代码是php解析url并得到url中的参数,代码如下所示:php$url='

标签: php变量底层实现

本文链接地址:https://www.jiuchutong.com/biancheng/276008.html 转载请保留说明!

上一篇:使用xampp搭建运行php虚拟主机的详细步骤(xampp如何运行php项目)

下一篇:PHP统计当前在线用户数实例讲解(php统计当前在线人数)

  • 未开票收入以后必须开票吗
  • 上交的项目评审费如何做财务处理呢?
  • 支付宝企业账户客服电话
  • 办公费税前扣除标准2022最新
  • 增值税发票查验平台官网网络异常
  • 总公司与分公司的账务处理销售
  • 来料加工进料加工是免税的吗?
  • 商场补贴申请怎么写
  • 销售收入交的印花税谁交
  • 销售使用过的板房如何缴税?
  • 销售使用过的固定资产3%减按2%
  • 无法设置面容id怎么办
  • 主营业务收到的现金
  • win10自带的清理对固态有影响吗
  • 开机反应慢是怎么回事
  • 苹果手机录音转mp3怎么转
  • 解决http请求下无法开启麦克风问题
  • PHP中使用什么关键字声明变量的作用域为全局
  • 高新技术企业职工总数
  • 债券利息计算方法
  • 货物运输业增值税发票样本
  • vue状态管理有哪些
  • thinkphp yii
  • php制作留言板包含登录和功能实现
  • php获取当前时间提交数据库
  • php解析base64数据生成图片的方法
  • vue自定义页面
  • 数据挖掘的四种基本方法
  • 前端实际开发
  • python安装后找不到了
  • 总公司与分公司合作协议范本
  • 个人向公司借款协议书范本
  • c语言中有哪些语句
  • 转入固定资产清理会计科目
  • 用友t3核算管理如何取消记账
  • 公司注销公章的处理
  • mysql 中文排序是什么规则
  • sqlserver去掉字符串内的指定字符
  • 工业设备种类
  • 基建拨款在新政府会计制度对应什么科目
  • 新会计准则有哪三个
  • 借款利息税前扣除应当注意的三个问题
  • 社保扣款上月没扣费
  • 个人生产经营所得
  • 贷款利息进项税额转出
  • 支付关税现金流放哪儿
  • 发明专利权限的期限是多少年
  • 房地产项目开发的基本流程是什么
  • 外贸退税是算利润吗
  • 汽车三产件
  • 长期待摊费用的摊销期限应该是
  • 工业企业固定资产投资
  • sql语句查询有多少条数据
  • sql server数据表
  • win10上如何安装hd4850驱动
  • win10 9月更新 问题
  • Windows Server 2008虚拟技术说明
  • centos设置开机启动项
  • win8.1无法安装
  • win10用着怎么样
  • 怎么关闭xp系统弹窗
  • 怎么更改电脑键盘语言
  • win10右下角功能列表不见了
  • windows live language setting
  • win7如何更改欢迎界面
  • win7系统弹出好多停止运行程序
  • Win10 Mobile 10586正式版即将向Insider用户推送
  • 斗西游破解版
  • texturepackergui
  • Android游戏开发案例教程小小弹球
  • linux4个主要部分
  • javascript代码规范
  • 安卓版本apk
  • 安卓仿平板
  • 第一章阎王点卯的小说名字
  • androidstudio webview
  • 税务局打来电话
  • 个人所得税预扣预缴办法
  • 江苏宿迁个体户那个园区好
  • 特服号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设