【PHP扩展开发】深入理解PHP7之ZVAL

PHP7已经发布, 如承诺, 我也要开始这个系列的文章的编写, 今天我想先和大家聊聊zval的变化. 在讲zval变化的之前我们先来看看zval在PHP5下面是什么样子版权申明本文是原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。非经允许,不得用于赢利目的。PHPzval回顾在PHP5的时候, zval的定义如下struct _zval_struct union long lval;double dval;struct char *val;int len;} str;HashTable *ht;zend_object_value obj;zend_ast *ast;} value;zend_uint refcount__gc;zend_uchar type;zend_uchar is_ref__gc;};对PHP5内核有了解的同学应该对这个结构比较熟悉, 因为... Read More

PHP 7来了,那么PHP 6去哪儿了呢?

PHP7 来了,那么 PHP6 去哪儿了呢?PHP7 简介PHP7 是 PHP 编程语言全新的一个版本,主要在性能方面获得了极大的提升。官方的文档显示,PHP7 可以达到 PHP5.x 版本两倍的性能。同时还对 PHP 的语法做了梳理,提供了很多其他语言流行的语法格式。难能可贵的是,做了如此大的改动,PHP7 的兼容性还是非常好的。对于绝大多数的应用来讲, 可以不用做修改即可迁移到 PHP7 版本。PHP6 版本去哪儿了?谈到 PHP7,大家肯定会问,PHP6 版本去哪儿来呢?这个说来话长。早在 2005 年的时候,PHP 社区发起了 PHP6 的项目,这个项目旨在为 PHP 提供完全内置的 unicode 的支持。但由于种种困难,该项目最终于 2010 年取消。虽然 PHP6 这个项目取消了,但大量的功能已经在 PHP5.x 版本中得以实现。这里面最重要的就是 OOP 方面的提升。这也帮... Read More