工作原理就是把你写好的 php 代码编译成 c,然后你可以将其以扩展.so的形式添加到 'php.ini' 文件中。功能稍微少一点,适合简单场景
git clone https://github.com/zephir-lang/php-zephir-parser.git
cd php-zephir-parser
phpize
./configure
make && make install
编辑php.ini
vim /usr/local/php/etc/php.ini
[Zephir Parser]
extension=zephir_parser.so
或者直接一键安装 pecl install zephir_parser
安装zephir.phar
wget https://github.com/zephir-lang/zephir/releases/download/0.17.0/zephir.phar
mv zephir.phar /usr/bin/
chmod 755 zephir.phar
ln -s /usr/bin/zephir.phar zephir
验证是否安装正确:
zephir help
开始编写代码
zephir init utils
执行之后,一个目录称为“utils”创建在当前工作目录:
$ cd utils
$ ls
ext/ utils/ config.json
utils/utils/greeting.zep
namespace Utils ;
class Greeting
{
public static function say ( )
{
echo "hello world!" ;
}
}
现在,我们需要告诉Zephir编译和生成的扩展,必须在代码根目录,也就是utils/utils目录下:
zephir build
如果一切顺利将看到以下输出:
Extension installed!
Add extension=utils.so to your php.ini
Don't forget to restart your web server
先移动utils.so到扩展目录下,我的在/usr/lib/php/20190902。最后修改php.ini中加入extension=utils.so
检查是否正常加载扩展通过执行以下:
$ php -m
[PHP Modules ]
utils
测试
<?php
echo Utils\Greeting ::say (), "\n" ;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义