[ PHP 内核与扩展开发系列] 类与面向对象:接口实现与类的继承

定义接口 定义一个接口还是很方便的,我先给出一个 PHP 语言中的实现: <?php interface i_myinterface { public function hello(); } 其在扩展中的实现是这样的: zend_class_entry *i_myinterface_ce; static zend_function_entry i_myinterface_metho…

[ PHP 内核与扩展开发系列] 类与面向对象:如何定义一个类

zend_class_entry zend_class_entry 是内核中定义的一个结构体,是内核实现 PHP 语言中类与对象的一个非常基础、关键的结构类型,相当于我们定义类的原型。如果我们想获得一个名字为 myclass 的类该怎么做呢?首先我们定义一个 zend_class_entry 变量,并为它设置名字,最后注册到 runtime 中去: zend_class_entry *m…