PHP编译器BPC 6.5发布,支持gmp扩展,实现SplObjectStorage

heguangyu5

BPC是一个PHP Native Compiler,可以将PHP源码最终转译成C语言,然后编译成动态链接库或可执行程序.

BPC还内置软件授权机制,最终可实现源码保护、软件授权、二进制打包三合一!

彻底解决PHP项目的交付问题.

How BPC Works

  1. 官网 bpc.dev
  2. 安装使用文档
  3. Try BPC with Docker
  4. Run BPC Compiled Program with Docker
  5. BPC编译入门示例: Tiny File Manager

BPC 6.5 主要有两项改进:

1. 支持gmp扩展,支持Object运算符重载

gmp扩展在第一个层面是 GNU MP library 的简单封装.

另一个层面是借由gmp扩展,BPC Runtime支持了PHP Object 的 do_operation handler,这也意味着不只GMP扩展,以后其它扩展如果有需要,都可以轻松 实现运算符重载, BPC和PHP的兼容性又进了一步.

什么是运算符重载?

$a = gmp_init(42);
$b = gmp_init(17); // $a $b 都是 GMP Object

var_dump($a + $b);
var_dump($a & $b);
var_dump($a << $b); // Object可以直接进行加减乘除,取余,位运算等操作,无需调用扩展函数

2. 实现 SplObjectStorage

BPC 6.5 实现了 SplObjectStorage 的常见用法,之前编译 webman-framework 时对 src/Context.php 临时性hack已经rollback了.

402 1 2
1个评论

happy321

大佬 可不可以帮我们做一个视频教程 编译webman 或者 workerman的

heguangyu5

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