izmanw / zephir
Zephir是一种针对创建PHP的C扩展的高层编译语言
0.9.4
2016-08-08 03:10 UTC
Requires (Dev)
- ext-gmp: *
- ext-pdo: *
- ext-pdo_sqlite: *
- phpunit/phpunit: 3.7.*
- squizlabs/php_codesniffer: ~2.6
README
Zephir - Ze(nd Engine) Ph(p) I(nt)r(mediate) - 是一种高层语言,简化了PHP扩展的创建和维护。Zephir扩展被导出为C代码,可以通过gcc/clang/vc++等主要C编译器进行编译和优化。功能被暴露给PHP语言。
主要特性
- 动态/静态类型
- 与完全解释相比,执行开销减少
- 限制过程式编程,推广面向对象编程
- 内存安全
- 即时编译器(AOT)以提供可预测的性能
编译器设计目标
- 多遍编译
- 类型猜测/推断
- 允许运行时配置指导优化、伪常量传播和间接/虚拟函数内联
要求
编译zephir-parser
构建PHP扩展
- g++ >= 4.4/clang++ >= 3.x/vc++ 9
- gnu make 3.81或更高版本
- php开发头文件和工具
安装
您可以使用composer安装zephir。运行composer require phalcon/zephir
,然后运行./install
,最后从您的bin-dir
运行zephir
。默认情况下是./vendor/bin/zephir
。您可以在其文档中了解更多有关composer二进制文件的信息。
要全局安装通过composer,您可以使用composer global require
。不要忘记将~/.composer/vendor/bin
添加到您的$PATH
中。
您还可以直接克隆zephir仓库并运行./install
。对于全局安装,请添加-c
标志。
Ubuntu上的附加说明
在Ubuntu中需要以下软件包
- apt-get install re2c libpcre3-dev
使用方法
编译扩展
./bin/zephir compile
外部链接
许可
Zephir是开源软件,根据MIT许可证授权。有关更多信息,请参阅LICENSE文件。
贡献
有关向此存储库贡献的详细信息,请参阅CONTRIBUTING.md。
当前构建状态
Zephir是在Travis CI服务下构建的。每次向此存储库推送的提交都会将构建排队到持续集成服务中,并运行所有PHPUnit测试,以确保一切正常并且项目稳定。当前构建状态是