phpzend-frameworkzend-framework2resinquercus

Is it possible to run a ZF2 application on Resin with Quercus?


I am attempting to set up a very basic Zend Framework 2 application to run on Resin using Quercus as a proof of concept. I'm running into some issues, and I haven't been able to find any open source examples of a ZF2 application running on Resin.

I've managed to get PHP working, but I am seeing errors about functionality normally included by the PHP SPL extension when trying to load my Zend application. It appears that SPL is not fully implemented by Quercus, so hopefully there's a work-around I can use if that is the case.

The first error I saw was about a missing function: spl_object_hash. I wrote a placeholder for this method to get around the error for now (it's pretty terrible, I know):

if (!function_exists('spl_object_hash')) {
    function spl_object_hash() {
        usleep(1);
        return md5(microtime());
    }
}

The next two errors were about the missing classes: SplPriorityQueue and SplStack. I wrote some placeholders for those as well, going by the documentation here: https://www.php.net/manual/en/book.spl.php. These placeholder classes are basically just wrappers for an array.

The error I'm running into now is:

.../library/Zend/ServiceManager/ServiceManager.php:456: Fatal Error: Uncaught exception of type 'Zend\ServiceManager\Exception\ServiceNotFoundException' with message 'Zend\ServiceManager\ServiceManager::get was unable to fetch or create an instance for Application Location[.../library/Zend/ServiceManager/ServiceManager.php:456]'

I'm not really sure where to go from here.

For reference, I'm using:


Solution

  • I copied this question to the Caucho Quercus Google Group, and I received this response.

    It appears that at this time, it is not possible to run a Zend Framework 2 application using Resin and Quercus.

    The missing function spl_object_hash has been implemented for the upcoming 4.0.39 release.

    Additionally, Nam Nguyen of Caucho submitted the following bug reports on my behalf:

    http://bugs.caucho.com/view.php?id=5623