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

2023-05-15 14:06:18 +08:00
 heguangyu5

不了解 BPC 是什么的可以翻看之前的帖子.

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

6.1 版本有两个亮点:

1. 实现了 event (core)扩展

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

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

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

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

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

2029 次点击
所在节点    PHP
11 条回复
dw2693734d
2023-05-15 14:08:23 +08:00
good, good, best language in the universe
CodeCodeStudy
2023-05-15 14:14:23 +08:00
编译成机器码,用来保护源码?
jason56
2023-05-15 15:29:50 +08:00
未来会考虑加入 swoole 扩展吗
heguangyu5
2023-05-15 15:54:13 +08:00
@CodeCodeStudy 是的,第一目的就是源码保护
heguangyu5
2023-05-15 15:55:39 +08:00
@jason56 虽然理论上可行,短期内比较困难,我们自身也没有 swoole 的相关需求.
jason56
2023-05-15 16:04:08 +08:00
@heguangyu5 期待可以支持 swoole
wslsq
2023-05-15 16:08:45 +08:00
支持大佬
happy11
2023-05-18 07:12:24 +08:00
加油 要是 workerman 完美支持就够我用了
lifeintools
2023-05-18 08:10:46 +08:00
大佬牛逼
heguangyu5
2023-05-18 08:20:25 +08:00
@happy11 应该问题不大.

因为最近公司有个项目需要在线聊天,调研了一圏决定用 GatewayWoker,所以才实现了 event 扩展,之前没解决的一些小问题也都解决了,本地开发测试过程中还没有发现什么问题,下个月项目就会上线.

等项目上线运行稳定了,会写个文章详细介绍下 workerman 和 GatewayWorker 的编译和应用.

另外, https://bpc.dev 上 BPC Playground 连接的 online compiler 其实就是用 wokerman 实现的一个 websocket server, BPC 静态编译的,不是用 php 运行的.
happy11
2023-05-18 14:21:21 +08:00
希望到时收费便宜点,PHP 也就缺个好用不贵的源码加密方式了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/940116

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX