PHP编译器BPC 6.1发布,支持event扩展,新官网上线,可在线编译

heguangyu5

不了解BPC是什么的翻看之前的帖子PHP编译器BPC成功编译workerman.

简言之,BPC可以将PHP代码最终转译成C语言,然后编译成动态链接库或者可执行程序,实现 PHP Native AOT.

how BPC works

6.1版本有两个亮点:

1. 实现了event (core)扩展

有了event扩展,类似workerman之类的项目就可以应用到生产环境了.

2. 新官网 Try it online (BPC Playground)

新版官网 https://bpc.dev 可以在线体验BPC编译器.

为减小最终可执行文件的大小,默认编译器只链接了标准库,如果代码中用到了其它扩展,需要勾选上对应的扩展.不然肯定会报 Call to undefined function xxx() ...

为了进一步减小下载文件的大小,对可执行文件做了gzip压缩,下载回来后需要解压后才能运行.

BPC Playground

809 3 1
3个评论

Hennor

可以直接生成exe文件不呢?

  • heguangyu5 2023-05-17

    bpc只支持linux,不支持windows. 如果非要在windows上运行的话,可以安装wsl.我刚测试了一下,从简单的hello world到稍复杂点的simple-http-client都可以正常运行.

tanhongbin

官网 得到的是啥? 就是执行了命令然后啥也没欧了,也没有打包成c文件呀

  • heguangyu5 2023-05-24

    最终会生成一个gz压缩过的可执行文件,下载回来解压缩就能执行了.如果你没有得到gz文件的话,看看console的输出是不是有语法错误什么的,没有编译成功.

tanhongbin

截图,编译的是你自己的hello php文件

  • heguangyu5 2023-05-24

    license过期了,现在可以了,你再试下

  • tanhongbin 2023-05-24

    大佬你这很牛呀,现在webman workerman 这些能打包了嘛?可以做一个付费的打包,打包成功后一次收费多少,估计市场大大的有呀

  • tanhongbin 2023-05-24

    现在是一个一个文件打包,不太灵活,整一个打包整个项目的,例如webman 就行,这个很多公司会有需求的,我们就有

  • tanhongbin 2023-05-24

    最好能支持linux 的,只支持乌班图不太好弄

  • heguangyu5 2023-05-24

    GatewayWorker/workerman是可以的,最近一个项目在用. webman没用过. 编译器的商业化还没定,如果有需要,可以在公司层面进行合作.

  • heguangyu5 2023-05-24

    是可以多个文件编译的,你再看下.我们自己的web项目几千个文件编译成一个.so.

  • tanhongbin 2023-05-24

    大佬,牛

  • heguangyu5 2023-05-24

    理论上linux 64位cpu都能支持,只不过需要把编译器重新编译一下,链接的动态库版本调一下就好.但目前没有需求,就没做.

  • tanhongbin 2023-05-24

    我真觉得你们这个产品功能再好好优化一下,php源码加密肯定是很有市场的,给你们点赞

  • heguangyu5 2023-05-24

    目前只是我们公司自己的项目在用,如果你个人或者你公司有需要的话,可以发邮件到上面截图里的邮箱,在商业化策略确定之前,license都免费提供的.感谢关注.

  • tanhongbin 2023-05-24

    感谢大佬,公司如果有需求,就发邮件和你们合作哈

heguangyu5

1540
积分
0
获赞数
0
粉丝数
2022-11-24 加入
🔝