Quercus を概念実証として使用して、Resin で実行する非常に基本的な Zend Framework 2 アプリケーションをセットアップしようとしています。いくつかの問題が発生していますが、Resin で実行されている ZF2 アプリケーションのオープン ソースの例を見つけることができませんでした。
PHP を動作させることができましたが、Zend アプリケーションをロードしようとすると、PHP SPL 拡張機能に通常組み込まれている機能に関するエラーが表示されます。Quercus では SPL が完全には実装されていないようです。
私が見た最初のエラーは、関数の欠落に関するものでした: spl_object_hash
. 今のところエラーを回避するために、このメソッドのプレースホルダーを作成しました (かなりひどいことはわかっています)。
if (!function_exists('spl_object_hash')) {
function spl_object_hash() {
usleep(1);
return md5(microtime());
}
}
次の 2 つのエラーは、不足しているクラスに関するものでした:SplPriorityQueue
と
SplStack
. http://us3.php.net/manual/en/book.spl.phpのドキュメントに従って、それらのプレースホルダーもいくつか書きました。これらのプレースホルダー クラスは、基本的に配列の単なるラッパーです。
私が今実行しているエラーは次のとおりです。
.../library/Zend/ServiceManager/ServiceManager.php:456: 致命的なエラー: タイプ 'Zend\ServiceManager\Exception\ServiceNotFoundException' の例外がキャッチされず、メッセージ 'Zend\ServiceManager\ServiceManager::get はフェッチまたは作成できませんでしたアプリケーションの場所のインスタンス[.../library/Zend/ServiceManager/ServiceManager.php:456]'
ここからどこへ行けばいいのかよくわかりません。
参考までに、私は使用しています: