Facebook は本日、大きな発表を行いました。HHVM はオリジナルのヒップホップ コンパイラに取って代わります。
古い HipHop では拡張機能のサポートが制限されていました (IIRC を含む)、postgres のサポートはありませんでした。
HHVM はすべての pecl 拡張機能をサポートしていますか? 標準の PHP ライブラリはどの程度サポートされていますか?
HHVM がサポートしていないものは何ですか?
Facebook は本日、大きな発表を行いました。HHVM はオリジナルのヒップホップ コンパイラに取って代わります。
古い HipHop では拡張機能のサポートが制限されていました (IIRC を含む)、postgres のサポートはありませんでした。
HHVM はすべての pecl 拡張機能をサポートしていますか? 標準の PHP ライブラリはどの程度サポートされていますか?
HHVM がサポートしていないものは何ですか?
私が最初にこの質問に答えてから1年で、状況は劇的に変化しました。 HHVMは拡張リストを公開するようになりました。のサポートはまだ組み込まれていませんが、PDOのPostgresサポートを実装および提供するこのサードパーティの拡張機能ext/pgsql
を指しています。また、独自の拡張機能の作成に関するドキュメントも公開しています。ext/pgsql
私の最初の答えは以下の通りです。HHVMがHipHopに完全に取って代わり、以下のリンクと情報が古くなっていることに注意してください。
HHVMはすべてのpecl拡張機能をサポートしていますか?
現在のすべてのPHP拡張機能は、現在のPHPコードベース、Zend API、および既存のPHPVMに容赦なく結びついています。
HipHopとHHVMは、PHPコードを実行するために異なるメソッドを使用する、PHP言語の別個の実装です。既存のPHPコードベース、Zend ZPI、またはPHPVMは使用しません。PECLでホストされているものなど、既存のPHP拡張機能は、HipHop/HHVMに直接移植することはできません。
実際には、完全なゼロからの再実装ほど発生する必要があるのは、拡張機能の「移植」ではありません。良いニュースは、もしあれば、多くのPHP拡張機能は、拡張機能に変換されているライブラリによって公開される生のCレベルAPIに対する単なる薄いベニアであるということです。ターゲットが何であるかによっては、ポートは非常に簡単な場合があります。一方、すべての拡張機能がサードパーティライブラリのラッパーであるとは限らないため、YMMVです。
標準のPHPライブラリのどのくらいをサポートしていますか?
サポートされている拡張機能のリストはruntime/ext
ディレクトリにあるようです。
https://github.com/facebook/hiphop-php/tree/master/src/runtime/ext
かなり包括的に見えます、彼らはPDOさえ持っています。ただし、Postgresサポートの兆候はありません。
1年後 - まだMySqlのように高騰していませんが、この 公式HHVMブログのコメントの返信によると方法があるようです(2013年12月19日から)
Jeremy Wilson のコメント: Redis と PostgreSQL のサポートが欲しいです。
(返信) Simon は言う: Redis のサポートは既に利用可能で、使用できる PostgreSQL 拡張機能があります。
いろいろ調べてみたところ、ほとんどのライブラリがまだサポートされていないことを示唆するこの Facebook 投稿を見つけました。