在对 Peachpie 的用法进行了一些工作之后,现在回到了在编译器本身实现的核心功能。目前正在更加接近完成项目的“初衷” — 能够运行完整的现实世界的应用程序

PHP 会话
<?php
session_start();               // this actually initializes $_SESSION from ISession service
echo $_SESSION['counter']++;  // here we change PHP session variable
session_commit();             // and this serializes $_SESSION back into ISession and saves the session object
评估代码
<?php function main() 
{ //eval('echo "Hello evil .NET World!";'); 
eval('class X { function foo(){ echo __METHOD__; } }');
 (new X)->foo();
}
main();
Peachpie 诊断
<?php
function g($p) {
  global $p; // reported as not yet supported
}
print_r( g() ); // g : Generator
实验性的生成器实现
<?php
function g() {
  yield 1;
  yield 2;
  echo yield 3; // reported as not yet supported
}
print_r( g() ); // g : Generator
VSCode 扩展
对图像和 GD2 的实验性支持

 发布主页

Peachpie 是一个用于 .NET 平台上的的 PHP 编译器和运行时。作为 PHP 语言的完全重新实现,它允许完全使用 .NET 进行编写,并在 .NET Framework、NET Core 和 Mono 上运行 PHP。Peachpie 可以无缝利用 .NET 对象,另一方面,也可以让 C# 代码直接访问已编译的 PHP 函数、变量和类。

Peachpie 项目的目标是将 PHP 代码库迁移至 .NET,从而可通过各自的 API 为 PHP 提供 .NET 和 ASP.NET 运行时。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Peachpie 0.7.0 的新特性,.NET 平台上的 PHP 编译器
本文地址:https://www.linuxprobe.com/peachpie-net-php.html编辑:吴向平,审核员:逄增宝

本文原创地址:https://www.linuxprobe.com/peachpie-net-php.html编辑:xiangping wu,审核员:暂无