PeachPie 1.1.13 发布支持最新PHP 8.5.0

news/2025/11/27 7:14:18/文章来源:https://www.cnblogs.com/shanyou/p/19275189

PeachPie 是一个有趣的技术项目,它架起了一座连接 PHP 生态与 .NET 世界的桥梁。

PHP的最新版本是PHP 8.5.0,已于2025年11月20日正式发布。PeachPie 1.1.13 版本也同步发布。这是一个版本上的提升,包含了一些安全更新和新的语法功能,以及最新的PHP 8.5.0的支持。当前版本编译器和库都是用 .NET 6 构建的。PeachPie 团队努力保持与遗留项目的兼容性,尽管即将到来的更新将针对 .NET 10,以利用新的 C# 和 .NET 特性。

PHP 8.5

即将推出的PHP 8.5将引入新的管道操作员。类似于 Bash 中的管道作符,它将左作数的结果作为参数传递给右侧的可调用函数,从而高效地实现函数调用链式,避免丑陋嵌套。|>

PeachPie已经支持了!

$result = "Hello World"
    |> strtoupper(...)
    |> str_shuffle(...)
    |> trim(...);

尽管它可能被视为语法糖,但请记住,正确的作数是一个可调用对象,而不是函数调用。这可能会受到绩效惩罚。

如上例所示,使用了 PHP 8.1 引入的新一类可调用语法,该语法为函数strtoupper创建了可调用函数strtoupper(...)

编译器可能会输出非常短的IL作码序列,例如:

.ldstr "Hello World"
.call strtoupper

或者,编译器也可以将其视为动态函数调用:在运行时解析函数,将参数加载到参数数组中,并动态执行调用。


PeachPie 的优势与价值
  • 性能提升:由于 PHP 代码被提前编译为 .NET 程序集,它可以借助 .NET 的即时编译器(JIT)进行深度优化。一些测试表明,在函数调用等场景下,其性能相比原生 PHP 有显著提升 。
  • 代码安全与类型检查:它将 PHP 这种动态语言在编译阶段就进行了严格的语法和类型检查,有助于在运行前发现潜在错误。同时,分发时是编译后的程序集,有助于保护源代码安全。
  • 无缝互操作性:实现了 PHP 和 C# 代码的双向调用。你可以在 PHP 项目中直接使用丰富的 .NET 类库,也可以在 C# 项目中引用 PHP 编写的模块 。
  • 强大的开发生态:集成到 Visual Studio 和 MSBuild 中,开发者可以享受工业级的代码编辑、调试、性能分析等工具支持。
主要应用场景
  • 现有 PHP 应用现代化:如果你有一个用 PHP 编写的大型遗留系统(例如 WordPress 博客),希望将其集成到新的 .NET 技术栈中,PeachPie 提供了一种平滑迁移的可能  
  • 混合语言开发:在新项目中,可以根据技术优势或团队特长,让 PHP 和 C# 分别负责不同的模块(例如,PHP 处理前端展示逻辑,C# 处理后端高性能计算),然后通过 PeachPie 将它们无缝整合

PeachPie 为 PHP 开发者打开了通往 .NET 世界的大门,也为 .NET 生态注入了新的活力。无论是希望提升现有 PHP 应用的性能和安全性,还是探索混合语言开发的新模式,它都值得你深入了解。


  • Update 1.1.13 and PHP 8.5 Pipe Operator: https://peachpie.io/blog/2025/11/16/update-1113-and-php-85-pipe-operator

  • peachpie 1.1.13: https://github.com/peachpiecompiler/peachpie/releases/tag/v1.1.13

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/977831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[1141] Swich Control Key and Command Key in Macbook

[1141] Swich Control Key and Command Key in MacbookShort answer: you can’t tell macOS “use Ctrl+C for copy instead of ⌘C” directly – but you can make your Ctrl key behave like Command, so pressing…

读社会工程:防范钓鱼欺诈(卷3)03保护课程

读社会工程:防范钓鱼欺诈(卷3)03保护课程1. 保护课程 1.1. 批判性思维1.1.1. 很多时候人们把批判性思维和逆反、缺乏信仰或者为了质疑而质疑联系在一起1.1.2. 告诫自己不要事事都信以为真1.1.3. 攻击者不希望你思考…

2025年下半年公交候车厅品牌推荐前十指南

摘要 2025年下半年,公交候车厅行业持续发展,环保、智能化和定制化成为主流趋势。本文基于市场调研和用户反馈,整理出前十推荐品牌榜单,排名不分先后,旨在为采购商提供参考。榜单中的公司均经过综合评估,重点推荐…

2025年下半年电子站牌品牌口碑推荐榜单

摘要 2025年下半年,电子站牌行业随着智慧城市建设的推进,呈现出快速增长的趋势,环保节能和智能化成为主流方向。本文提供一份电子站牌品牌推荐榜单,基于行业数据、用户口碑和实际案例整理,榜单排名不分先后,仅供…

2025年下半年公交候车厅品牌选购终极指南:十大优质供应商推荐

文章摘要 随着城市公共交通系统的持续升级,2025年下半年公交候车厅行业迎来新一轮发展机遇。本文基于行业调研数据,为您推荐十家值得关注的公交候车厅品牌供应商,排名不分先后,旨在为采购决策提供参考。特别说明:…

2025年下半年电子站牌品牌综合推荐指南:十大优质供应商盘点

文章摘要 2025年下半年电子站牌行业迎来智能化升级浪潮,随着智慧城市建设的深入推进,电子站牌作为城市公共交通信息化的重要组成部分,其技术含量和服务质量要求不断提高。本文基于市场调研和用户反馈,整理出十家在…

高性能AI股票预测分析报告 - 2025年11月27日 - 06:28:00

高性能AI股票预测分析报告 - 2025年11月27日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-wi…

高性能AI股票预测分析报告 - 2025年11月27日

高性能AI股票预测分析报告 - 2025年11月27日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-wi…

增强AI股票预测分析报告 - 2025年11月27日

增强AI股票预测分析报告 - 2025年11月27日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-widt…

AI股票预测分析报告 - 2025年11月27日

AI股票预测分析报告 - 2025年11月27日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-width: 1…

Bazzite:专为游戏打造的即用型操作系统

Bazzite是基于Fedora Atomic Desktop的即用型游戏操作系统,支持Steam Deck、台式机和HTPC,预装NVIDIA驱动和游戏工具,提供开箱即用的游戏体验。Bazzite:专为游戏打造的即用型操作系统 项目简介 Bazzite是一个基于F…

大盘风险控制策略分析报告 - 2025年11月27日

大盘风险控制策略分析报告 - 2025年11月27日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-wi…

使用spaCy构建可定制NLP管道

本文介绍了如何使用spaCy库构建可定制的自然语言处理管道,包括分词器定制、模型训练、配置文件和实体链接等核心技术。内容涵盖spaCy v3新特性、Thinc深度学习框架及实际应用案例。使用spaCy构建可定制NLP管道 NLP简介…

ant-design中a-table获取多分页中选择、全选问题处理

ant-design中<a-table获取多分页中选择、全选问题处理1、首先记录里需要有key ,用于标识行,不然如果各页中有重复key的话,切换到新页时会显示已选key的那行(key匹配) 2、在rowSelection中处理,关键是selected…

ant-design中a-table前端分页

ant-design中<a-table前端分页 数据已经全部在datasource2中了,每页大小固定5条,使用slice 切片获取每页数据

hyx_蓝桥杯C++学习_系列二

hyx_蓝桥杯C++学习_系列二一、递归的介绍 1. 概念 递归是函数直接或间接调用自身的过程 2. 两个关键要素终止条件:防止无限递归,类似于循环的终止条件防止死循环 递归表达式:递归的主体,将问题拆分为规模更小的子问…

【Java学习】【Java基础】--第3篇:初学模板方法模式和策略模式

一、模板方法模式 (Template Method Pattern) 1. 核心思想:骨架不变,细节可变 2. 模板方法模式的关键特点控制流程:父类控制算法骨架,子类实现具体步骤 代码复用:公共代码在抽象类中实现 扩展性:通过钩子方法提供…

mysql常用到的面试问题

1. MySQL 数据库的主要备份方式有哪些?答案:主要备份方式包括全量备份(完整备份整个数据库)和增量备份(仅备份自上次备份以来发生变化的数据)。工具有 mysqldump、XtraBackup 和物理备份。 2. 如何确保 MySQL 数…

充电模块厂家哪家好,2025充电模块厂家权威榜单

随着新能源汽车的普及,充电模块作为充电桩的“心脏”,其性能直接决定了充电效率与安全。面对市场上众多的充电模块厂家,如何避开营销噱头,选择一家真正靠谱的合作伙伴成为许多企业与采购者的难题。本文将为您呈现一…

电源模块厂家哪家好,2025电源模块厂家公司盘点

电源模块作为电子设备的“心脏”,其性能与可靠性直接关系到整个系统的稳定运行。面对市场上众多的电源模块厂家,如何找到那些在特定领域深耕细作、技术过硬但可能并不广为人知的优质企业呢?本文将为您盘点8家在2025…