登录  注册 退出
苏杭php自学网
记录个人学习过程中碰见的问题和感受
要温柔,也要有屠龙的勇气
本站有学习资源,可自由下载学习资料
  1. 首页 > PHP自学教程

php变量的底层原理

作者:苏杭 日期:2020-04-18 10:01:22 点击数:

php语言是用C语言编写的,所以解压php文件,会发现很多文件,其中php解释器中的php的变量实现代码如下:


php变量的底层原理(图1)


这是C语言代码,这些就是保存一个php变量的结构体,

php的变量的值是放在Zval结构体中的value段中 的文件:Zend/zend.h


结构体中字段解释:

zvalue_value value:            变量的值

zend_uchar type:                  变量类型

zend_uint refcount__gc        指向次数

zend_uchar is_ref__gc          是否引用


type的有几种常见的数据类型 : float 浮点型,string 字符串,array数组,object对象,long长字符


        原理:当php创建了一个变量的时候: $a = 1;  php底层的C语言代码开始创建一个结构体,指定$a 的数据类型,是int型,$a的值为 1 ; $a 指向 1;$a的长度为1; 这个结构体被保存在内存中,当$a变量被调用的时候,$a将会指向内存中的结构体。


总结:当我们创建一个php变量,php解释器将会将这个变量的信息保存到内存里,当我们调用变量的时候,php解释器开始调用内存中的信息。


php变量的底层原理



标签: 底层原理
随便看看
QQ在线咨询
电话:
182 7047 6708
交流微信:
su18270476708