Been trying to figure this out for a while, because recently our Reporting Services stopped working from our PHP app.
Finally I tried something when I realized it would work once, and then fail.
I disabled eAccelerator (a new addition to our servers) and then they would always load the SSRS pages.
So I added a filter to the eAccelerator settings in our php.ini file.
All of my SSRS SDK files are stored in /ssrs/ sub folder, so I'm sure you can adopt the filter to suit your needs. Essentially, it breaks because there are a couple dynamically created classes and the eAccelerator doesn't know what to do with them
when it gets to them because the file mod time hasn't changed, nor has the class been created.
I hope this helps someone.
eaccelerator.filter = "/ssrs/.*.php"