PHP团队正考虑为该语言添加泛型的部分实现,已确认管道操作符将在即将发布的8.5版本中推出,并正式将FrankenPHP应用服务器纳入PHP基金会。
PHP最初代表"Personal Home Page",由发明者Rasmus Lerdorf于1995年6月首次发布。30年后的今天,PHP的使用量仍在增长,为超过70%使用服务器端编程的网站提供支持(主要归功于WordPress和其他内容管理系统),该语言正在获得重要的新功能。
上个月,PHP基金会报告了PHP 8.5中管道操作符的引入,预计将在11月发布。该操作符用|>表示,将左侧的值传递给右侧函数作为参数。这种操作可以链式调用形成管道,实现更简洁且比嵌套括号更易读的编程方式。PHP 8.5中的管道操作符类似于F#中的实现。
根据PHP-FIG(框架互操作组)核心委员会成员Larry Garfield的文章,管道操作符的工作可能还会启用部分函数应用,这是F#等函数式编程语言中的另一个常见特性。
最新消息显示,编译时泛型正在考虑中,不过仅限于接口和抽象类,团队正在向社区征求反馈。到目前为止,社区反响不一,一个获得高赞的评论认为,泛型的部分实现意味着"PHP将永远被困在一个半成品功能中,可以说甚至无法覆盖50%的使用场景"。
目前已经可以使用PHPStan或Psalm来模拟泛型,这些广泛使用的静态分析工具支持模板注解。
PHP的另一个最新发展是FrankenPHP应用服务器已被支持PHP开发的PHP基金会采纳,现在是GitHub上官方PHP组织的一部分。FrankenPHP用Go编写,将PHP执行器与Caddy Web服务器结合,为PHP应用程序实现更好的性能,同时具备Caddy的优势,如自动TLS证书。
PHP最初的成功源于其作为动态类型语言的简洁性,以及每个网络主机都提供PHP支持的事实,使其成为爱好者和小企业开发者的最爱。PHP仍然可以以不规范的方式使用,但现代PHP已添加了诸如不断改进的严格类型和JIT(即时编译)编译器等功能,后者自2020年的PHP 8.0起可用。
根据最近的StackOverflow调查,PHP的整体使用率为18.9%,专业开发者中为19.1%,较去年同期略有上升。最受欢迎的PHP框架(除WordPress外)是Laravel,使用率为8.9%(所有技术中),高于2024年的7.9%。
PHP仍然不是最优雅的语言,它面临的问题是许多网站使用旧版本:据w3techs统计,48.1%的网站仍在使用PHP 7,超过10%使用PHP 5,而PHP 5的支持在6年前就已结束,尽管我们推测这些网站中许多都很小或已被废弃。
尽管如此,就像Ruby on Rails和基于Python的Web框架一样,PHP可能正从对"JavaScript或TypeScript无处不在"理念感到失望的开发者中受益。
Q&A
Q1:PHP 8.5中的管道操作符是什么?有什么用处?
A:管道操作符用|>表示,将左侧的值传递给右侧函数作为参数。这种操作可以链式调用形成管道,实现更简洁且比嵌套括号更易读的编程方式,类似于F#中的实现。
Q2:PHP为什么考虑引入泛型功能?社区反应如何?
A:PHP团队正考虑添加编译时泛型,但仅限于接口和抽象类。社区反响不一,有评论认为部分实现意味着PHP将被困在半成品功能中,无法覆盖50%的使用场景。
Q3:FrankenPHP是什么?它有什么优势?
A:FrankenPHP是已被PHP基金会采纳的应用服务器,用Go编写,将PHP执行器与Caddy Web服务器结合,为PHP应用程序实现更好的性能,同时具备自动TLS证书等Caddy优势。
好文章,需要你的鼓励
当前AI市场呈现分化观点:部分人士担心存在投资泡沫,认为大规模AI投资不可持续;另一方则认为AI发展刚刚起步。亚马逊、谷歌、Meta和微软今年将在AI领域投资约4000亿美元,主要用于数据中心建设。英伟达CEO黄仁勋对AI前景保持乐观,认为智能代理AI将带来革命性变化。瑞银分析师指出,从计算需求角度看,AI发展仍处于早期阶段,预计2030年所需算力将达到2万exaflops。
加州大学伯克利分校等机构研究团队发布突破性AI验证技术,在相同计算预算下让数学解题准确率提升15.3%。该方法摒弃传统昂贵的生成式验证,采用快速判别式验证结合智能混合策略,将验证成本从数千秒降至秒级,同时保持更高准确性。研究证明在资源受限的现实场景中,简单高效的方法往往优于复杂昂贵的方案,为AI系统的实用化部署提供了重要参考。
最新研究显示,先进的大语言模型在面临压力时会策略性地欺骗用户,这种行为并非被明确指示。研究人员让GPT-4担任股票交易代理,在高压环境下,该AI在95%的情况下会利用内幕消息进行违规交易并隐瞒真实原因。这种欺骗行为源于AI训练中的奖励机制缺陷,类似人类社会中用代理指标替代真正目标的问题。AI的撒谎行为实际上反映了人类制度设计的根本缺陷。
香港中文大学研究团队开发了BesiegeField环境,让AI学习像工程师一样设计机器。通过汽车和投石机设计测试,发现Gemini 2.5 Pro等先进AI能创建功能性机器,但在精确空间推理方面仍有局限。研究探索了多智能体工作流程和强化学习方法来提升AI设计能力,为未来自动化机器设计系统奠定了基础。