V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
liqinliqin
58.52D
V2EX  ›  程序员

PHP Native AOT 编译器,支持将 PHP 代码编译为可执行文件,运算性能提高 150 倍

  •  
  •   liqinliqin ·
    PRO
    ·
    smartarduino · 1 天前 · 1800 次点击
    Swoole-Compiler v4 版本推出 Native AOT(Ahead-of-Time) 编译器,将彻底改写这一现状。AOT 编译器突破了 PHP 传统的解释执行模式,支持将 PHP 代码直接编译为原生二进制可执行文件。运算性能相比传统 PHP 解释器提升高达上百倍,性能表现已达到 Rust 、Golang 等现代编译型语言的同一水平线。

    https://mp.weixin.qq.com/s/05I3xe4pgRJufSBG-8Gz6w
    第 1 条附言  ·  1 天前
    Swoole-Compiler AOT 编译器已实现 PHP 语言自举

    概述
    Swoole-Compiler AOT 编译器除了性能优势之外,在工程实践上还有一个非常值得自豪的一点是:AOT 编译器从 1.0 版本开始就已经是完全自举( bootstrapping / self-hosting )的了。

    AOT 编译器本身是使用纯 PHP 代码开发,这与 HHVM 和 KPHP 、peachpie 等截然不同。HHVM 和 KPHP 是完全使用 C++开发的,而 Peachpie 则使用了 C#。

    Swoole-Compiler AOT 编译器的第一个版本使用了 Zend PHP 进行测试和验证,在项目开发完成后,则使用自身编译生成了第一个版本。

    https://mp.weixin.qq.com/s/a6XzFupPRcl9TvWXAv1Syg?scene=1&click_id=10
    24 条回复    2026-04-23 19:57:27 +08:00
    lol173
        1
    lol173  
       1 天前
    希望 PHP 越来越好
    liqinliqin
        2
    liqinliqin  
    OP
    PRO
       1 天前
    是的,现在基本和 Go 差不多的性能了
    elevioux
        3
    elevioux  
       1 天前
    啊,good old php 。在都是讨论 AI 的时代,看到这些项目突然有种“清新”的感觉。
    lisxour
        4
    lisxour  
       1 天前   ❤️ 3
    看了一下,太拉了,他又不是自己实现而是调库实现,因此他说的那些兼容性问题,要么你自己改代码,要么让 PHP 改进,就这两点就限制了没法铺开使用场景。我以前使用过 peachpie ,也是一言难尽。

    看似只有 8 条限制,但是都不知道杀死多少框架了

    mywaiting
        5
    mywaiting  
       1 天前
    邪修啊,一个动态脚本语言,能编译为二进制执行,多少有点像是在说梦话
    strobber16
        6
    strobber16  
       1 天前
    这种东西只会越来越没有市场。AI 一键重写的成本不比你去适配一个动态特性受限的非标方言的成本低
    phpsarc55
        7
    phpsarc55  
       1 天前
    @lisxour 赞同你的说法,单是这个语法兼容性问题就几乎抹杀了 PHP 的优势。
    ====================================分割线=================================
    老项目的话就我个人感觉改造成本太大了,如果要是新项目需要高性能为啥不选择性能更高的语言,PHP+要选一个不成熟的,对 PHP 支持度不高的 Swoole-Compiler V4?
    javalaw2010
        8
    javalaw2010  
       1 天前
    哎,且不论 AI 时代,这种特性大家还会不会轻易尝试,哪怕古法编程,这种东西放到线上之后出问题了,和本地表现不一致,你是怀疑编译器有问题呢,PHP 底层有问题呢,还是你自己的代码有问题呢,查都没法查。
    liaohongxing
        9
    liaohongxing  
       1 天前
    豆腐盘成肉 ,换 go 解千愁
    aonshuy
        10
    aonshuy  
       1 天前 via Android
    我记得很久以前 Facebook 干过这事
    SimbaPeng
        11
    SimbaPeng  
       1 天前
    不伦不类
    Jack66
        12
    Jack66  
       1 天前
    花边新闻,出现问题及解决成本,不如新学 golang ,趋利避害
    jingrui
        13
    jingrui  
       1 天前
    诶 Swoole 这步棋走晚了
    keepfun
        14
    keepfun  
       1 天前 via Android
    有一种被人赶超之后等过一阵子又开始发力的感觉,曾经的老人已经改换门庭了,新人直接无视。多好的语言啊,真是英雄迟暮。
    langhuishan
        15
    langhuishan  
       1 天前
    帮我这这个 PHP 项目改写成 golang 。等待 3 分钟,搞定
    mangobeta
        16
    mangobeta  
       1 天前
    感觉在当前时间节点,这些改进没啥意义
    lmmlwen
        17
    lmmlwen  
       1 天前
    可惜了啊
    iorilu
        18
    iorilu  
       1 天前
    @langhuishan 确实, 真有这需求, 直接让 ai 改写成 go 拉到

    新项目当然直接用 go
    FrankAdler
        19
    FrankAdler  
       1 天前 via Android
    不是 100%兼容,就上不了生产,废大功夫改造不如直接用 go
    liuliuliuliu
        20
    liuliuliuliu  
    PRO
       1 天前   ❤️ 1
    不如试试 PeachPie ?

    PeachPie Compiler
    Compile and run PHP on top the modern, secure and highly performant .NET runtime.

    Get Started Try Online
    https://try.peachpie.io/
    GodVan
        21
    GodVan  
       1 天前
    纯舍近求远,直接换 go 就行了
    liqinliqin
        22
    liqinliqin  
    OP
    PRO
       1 天前
    Swoole-Compiler AOT 编译器除了性能优势之外,在工程实践上还有一个非常值得自豪的一点是:AOT 编译器从 1.0 版本开始就已经是完全自举( bootstrapping / self-hosting )的了。AOT 编译器本身是使用纯 PHP 代码开发,这与 HHVM 和 KPHP 、peachpie 等截然不同。HHVM 和 KPHP 是完全使用 C++开发的,而 Peachpie 则使用了 C#。Swoole-Compiler AOT 编译器的第一个版本使用了 Zend PHP 进行测试和验证,在项目开发完成后,则使用自身编译生成了第一个版本。
    nc
        23
    nc  
       23 小时 40 分钟前
    Go 用标准库就能写完整的 Web 应用,phper 切换到 Go 不要太舒服,不要执着于 php 了。
    pooaer
        24
    pooaer  
       22 小时 0 分钟前 via Android
    新项目不怎么使用 PHP 了吧,维护这个 AOT 编译器的人真是情怀啊!
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   4467 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 117ms · UTC 09:58 · PVG 17:58 · LAX 02:58 · JFK 05:58
    ♥ Do have faith in what you're doing.