zephir 代码转换,php 代码如何自动转化为 zephir 代码 ?
发布于 作者:苏南大叔 来源:程序如此灵动~

在zephir
的初步编写尝试后,大家就会发现,其实很多事情都和想象的不一样。在php
中,很顺理成章的语句,在zephir
里面都是不能顺利解析的。所以,你可能需要一个php
代码,自动转换成zephir
代码的工具。苏南大叔在本文中,推荐一款自动代码转换的神器,叫做php-to-zephir
。有了这款代码转换神器后,编写zephir
的过程就会简单很多了。

本文测试环境为:mac10.14.1 (18B75)
,php7.2
,zephir0.11.8
,Zephir-Parser1.2.0
,php-to-zephir0.2.1
。
神器php-to-zephir
简介
苏南大叔推荐的这款自动转化神器php-to-zephir
,git
主页地址是:

截至到发稿,这款神器的最新版本是0.2.1
,已经三年左右没有更新了。
需要明确的是:
- 并不是所有的
php
都能转化,符合套路的才能转换。 - 转换的结果,也不一定是肯定能用的,还是必须去调试代码的。
所以,这个php-to-zephir
工具仅仅是个辅助工具,这点是必须明确的。所以,对转化的结果和过程,请不要报任何不切实际的幻想。如果直接转完就能使用的话,就没有必要用程序猿人工了。哈哈。
安装php-to-zephir
安装过程并不是从git
上拉取代码,再build
。而是通过composer
进行安装操作。
第一步:需要先初始化一个composer
项目。

第二步:修改为国内composer
源(可选)
如果您的网络环境良好的话,就不用这一步了。
第三步:安装php-to-zephir

查看php-to-zephir
版本号
可以通过下面的命令,查看本地composer
安装的php-to-zephir
版本:
返回值类似如下:
php
代码转换准备
要转换的代码,需要先事先放置在一个文件夹内,并且,所有的php
代码都必须放在一个namespace
和class
名下,也就是说,并不是任何代码都可以转化的。必须符合格式才可以做转换。下面就是套路格式:
把要转化的代码,放在项目根目录下面的myDirToConvert
文件夹(名字随意,记住即可)。
代码转化
下面的代码就是重点了,命令似乎有些长,注意替换里面的myDirToConvert
字样,替换为你的php
代码所在的目录。
注意myDirToConvert
就是要转化的php
代码的存放目录,注意做相关替换。
不出意外的话,就可以在项目根目录下面的converted
文件夹中看到转化的结果了,把转好的代码复制到zephir
项目中,就可以进行进一步调试了。

总结
学习zephir
的道路,又前进了一步。加油~ 少年~
更多zephir
的经验文章,请点击苏南大叔的zephir
经验文字列表吧~


