PHP 获得新平台支持:开发者将迎来哪些变化

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

PHP 现在支持新平台:这对 Web 开发者意味着什么



PHP 开发者社区迎来重要更新:编程语言 PHP 扩展了其生态系统,现已正式支持新平台——WebAssembly (Wasm)。这一事件为创建高性能 Web 应用和服务器端解决方案开辟了新天地。



什么是 WebAssembly,为什么它对 PHP 很重要?

WebAssembly 是一种低级二进制格式,允许代码以接近原生的速度直接在浏览器中运行。此前 PHP 仅限于服务器端,但随着对 Wasm 的支持,开发者将获得以下能力:

  • 无需传统 Web 服务器(Apache、Nginx),直接在浏览器中运行 PHP 脚本。
  • 在客户端应用中使用现有的 PHP 库和框架(Laravel、Symfony)。
  • 创建基于 PHP 的离线应用,无需访问服务器即可在浏览器中运行。


主要新特性与技术细节

PHP 与 WebAssembly 的集成得益于 PHP-Wasm 项目,该项目在 PHP 社区主要成员的支持下开发。新平台的关键特性包括:

  • 完全支持 PHP 8.x —— 语言的所有最新功能(JIT 编译、属性、命名参数)在 Wasm 构建中均可使用。
  • 文件系统支持 —— 在浏览器内模拟虚拟文件系统,以正确处理文件操作。
  • 扩展支持 —— 大多数流行扩展(PDO、cURL、GD、JSON)已编译为可在 Wasm 环境中运行。


这对性能有何影响?

测试表明,对于许多任务,PHP on WebAssembly 的性能与传统服务器端解决方案相当。在以下操作中性能提升尤为明显:

  • 模板处理和 HTML 生成。
  • 数组和字符串操作(得益于 JIT 编译)。
  • 数学计算执行。

然而,对于输入/输出操作(数据库交互、外部 API),仍建议使用服务器端 PHP,因为 Wasm 环境受限于浏览器能力。



实际使用场景

新支持开辟了几个有前景的方向:

  • 交互式学习平台 —— 直接在浏览器中运行 PHP 代码,无需配置服务器即可学习语言。
  • 原型开发 —— 在客户端快速验证算法和逻辑。
  • 前端集成 —— 使用 PHP 库在客户端处理数据(例如表单验证、加密)。


如何开始使用?

要尝试,只需从官方仓库下载 PHP-Wasm 构建版本,或使用 CDN 链接。最简单的使用示例:

<script src="php-wasm.js"></script><script>  const php = await PHPWasm.createInstance();  const output = php.run('<?php echo "Hello from PHP in browser!"; ?>');  console.log(output);</script>


请关注 pythonlib.ru 上的更新——我们将继续发布关于 PHP 新功能的文章。

推荐库