随笔分类 - php底层分析
摘要:变量的赋值与引用 例如:$a=3; $b=$a; 这个时候是否就产生了2个结构体呢? No,如果是的话,这两个结构体的type,value全都一样,很浪费呀,所以在PHP实现的时候并没有copy一个结构体出来,而是$a,$b共用一个结构体。 在传值赋值时,并没有新生结构体,而是共用的。 问题:$a,
阅读全文
摘要:2016-10-01 一.变量类型的实现 php源码结构体中的type类型主要是有IS_NULL,IS_RESOURCE,IS_ARRAY,IS_OBJECT,IS_LONG,IS_BOOL,IS_DOUBLE,IS_STRING, 对应的PHP中的8中数据类型,但是奇怪的是,zvalue_valu
阅读全文
摘要:2016-9-25 php的底层是用C语言写的,C语言是强类型的语言,而php是弱类型的语言,这是怎么实现的呢? 我们去查询PHP的源码可以发现,在源码的zend文件夹下,打开zend.h文件,找到C语言的结构体struct _zval_struct struct _zval_struct{ zva
阅读全文
摘要:2016-9-24 1 代码执行过程 对于C,C++等语言,经过编译器编译成计算机可以识别的语言(二进制)去执行。 对于JAVA语言,编译成class文件(能够持久的存在硬盘上),然后由java虚拟机(jvm)执行,因为jvm是跨平台的,所以java才能跨平台。 对于PHP语言而言,虽然是脚本语言,
阅读全文

浙公网安备 33010602011771号