JPHP は javac に似たコンパイラーで、PHP ソースコードを JVM バイトコードにコンパイルできます。そして、Java 仮想マシン上で PHP プログラムを実行できるようになりました。 多くの PHP5.3+ 機能をサポートしています。 JPHP は JRuby や Jython に似ています。
サポート: JDK 1.6+ (OpenJDK、Oracle)。
目標
JPHP は Zend PHP エンジンや Facebook HHVM に代わるものではありません。 Zend ランタイム ライブラリ (Curl、PRCE など) を実装する必要はありません。この商品の対象:
- PHP で便利な Java オブジェクトを使用する機能
- JIT と JVM によるパフォーマンスの向上
- Zend PHP の醜いランタイム ライブラリの代わりに、より優れたランタイム ライブラリを利用します
- PHP を Web アプリケーションの開発だけに使用しないようにしましょう
- また: 文字列とスレッドの Unicode
特徴
- JIT (2 倍から 10 倍高速な PHP 5.4)
- オプティマイザー (定数式、インライン関数など)
- PHP コードでの Java ライブラリとクラスの使用
- 文字列の Unicode (Java のような UTF-16)
- ねじ切り、ソケット
- 環境アーキテクチャ (runkit zend 拡張機能のサンドボックス オブジェクトなど)。
- GUI (Swing に基づいて改良、より柔軟なレイアウト)
- クラスと関数用の埋め込みキャッシュ システム
- クラスと関数のオプションのホットリロード
言語サポート機能
(zend ランタイム ライブラリなし)
- PHP 5.2+ 完全サポート (OOP 付き)
- クロージャー (PHP 5.3)、クロージャー内の自動バインディング
$this (PHP 5.4)
- 名前空間を完全にサポート (PHP 5.3)
- クラスの Spl オートロード (PHP 5.3)
- イテレーター、ArrayAccess、シリアル化可能
- クラス、配列、呼び出し可能なタイプのヒント (PHP 5.4)
- 配列の短い構文 (PHP 5.4)
- 三項ショートカット "?:"、NOWDOC、
__callStatic , __invoke (PHP 5.3)
- 最新の静的バインディング (PHP 5.3)
- 循環参照の GC (PHP 5.3)
-
Class::{expr}() , (new Foo)->bar() (PHP 5.4)
- 最後に試してみる(PHP 5.5)
- 配列および文字列リテラルの逆参照 (PHP 5.5)
-
__debugInfo var_dump (PHP 5.6) 用
- 関数配列の逆参照が追加されました。例:
foo()[0] (PHP 5.4)
- 定数は const キーワードを使用してクラスの外で宣言できます (PHP 5.3)
。
- 静的メソッドへの動的アクセス (PHP 5.3)
- 例外はネスト可能 (PHP 5.3)
-
::class システム定数 (php 5.5)
まだサポートされていないものは何ですか?
- 特性 (php 5.4)
- ジェネレーター (php 5.5)
- Goto (php 5.3)
- foreach の list() (php 5.5)
- 2進数形式、例: 0b001001101 (php 5.4)
プロジェクトのホームページ: http://www.open-open.com/lib/view/home/1395628572618
|