php的扩展是用c语言编写,Zend是语言引擎,PHP内核。在实际编写php扩展的时候,需要使用大量的Zend Api,虽然运行效率高,但是其实难度也比较大。
Zend Api
Zephir提供了一种类似php的高级语言语法的方式,来自动生成扩展的c语言代码,使编写php扩展变得非常的简单。
Zephir

1、Github clone

git clone https://github.com/phalcon/zephir

2、运行Zephir安装程序

cd zephir 
./install -c	

3、检测安装,看到版本就证明安装成功 zephir help

4、使用Zephir开发扩展
zephir init demo // 创建了一个名为demo的扩展
生成目录如下:
demo
ext // 目录下包含的是编译器生成扩展所需的代码(C源码)
demo // 目录下是我们的Zephir源码

5、添加一个类,Zephir语法参考:Zephir

// demo/demo/greeting.zep  
namespace Demo;  
class Greeting {  
    public static function say() {  
        echo "hello world!";  
    }  
}  

6、在根目录下Zephir编译和生成的扩展

zephir build

7、当然我们在编译中可能出现一些问题:

error: re2c is not installed
安装re2c拓展
wget http://tenet.dl.sourceforge.net/project/re2c/0.15.3/re2c-0.15.3.tar.gz
tar zxf re2c-0.15.3.tar.gz && cd re2c-0.15.3
./configure
make && make install
然后在执行zephir build

8、如果出现以下(代表编译好了):

Extension installed!
Add extension=demo.so to your php.ini
Don’t forget to restart your web server

9、 最后在php.ini中加入extension=demo.so,重启服务即可

10、php -m(出现demo就代表没问题了)

11、php测试

<?php
echo Demo\Greeting::say();

12、Zephir开发扩展是不是很容易呢相比C或C++开发简单多了吧。