zephir是用c写的php扩展,
zephir或许会开启一个新的PHP编写方式。 在这之前,如果我们要编写php的扩展,一般都是c++/clang/vc等等。 但是现在,我们有了新的选择: zephir.
zephir本身并不是为了替代c++/clang/vc等。 它本质是介于c和php的之间的一个语言,一个桥梁。
下面我们开始安装。 安装环境基于CentOS 6.5,php 5.6
安装系统依赖:
yum install wget git autoconf automake libtool gcc-c++
(因为我已经安装过了所以提示nothing to do)
git clone https://github.com/json-c/json-c.git
cd json-c
./autogen.sh
./configure
make
make install
re2c安装:
现在最新的版本是:0.13.6
wget https://sourceforge.net/projects/re2c/files/0.13.7.5/re2c-0.13.7.5.tar.gz/download
或者下载下来rz上传安装
tar zxf re2c-0.13.7.5.tar.gz
cd re2c-0.13.7.5
./configure
make
make install
然后在任何地方执行re2c -v, 应该输出:
zephir的安装。
git clone https://github.com/phalcon/zephir.git
./install
打zephir命令显示如下,说明安装成功
使用zephir开发扩展
下面这个例子我们创建了一个名为"fox"的扩展:
zephir init fox
之后,当前目录下就有一个"fox"目录了:
fox/
ext/
fox/
ext/ 目录下包含的是编译器生成扩展所需的代码(C源码).
fox/ 目录下是我们的Zephir源码.
我们需要切到工作目录下,也就是fox下,开始编写代码,我本地有写好的文件,直接上传fox文件夹下:
现在,需要告诉Zephir把我们的项目编译成扩展,这一步要在项目目录下执行:
zephir build
编译过后还要在php.ini中添加扩展,并重启httpd服务
查看扩展是否加入到php中 php -m
至此,zephir编写的扩展遍可以用了
ps:有兴趣的可以关注下我的公众号和小程序,谢谢啦~~