2012-10-06 13:12 阅读 22

PHP eAccelerator与脚本执行冲突

I have a strange thing happening since I turned on eAccelerator on my development local server. It happens regardless of the script context, so it doesn't matter if I run this code as it is in a separate .php or actually expect a thrown error to be caught in the application.

this gives a Fatal Error: Uncaught exception

try {
    throw new \Exception("Get out of here asap.");
    echo 'We never make it to here..';
 catch ( \Exception $e ) {
    echo 'Caught exception: ',  $e->getMessage(), "

but if I turn eAccelerator off everything just works. least this problem doesn't occur.

i use Uniform server's latest install with php 5.4.7 and Apache 2.4.3 on a win xp 32 sp3

EDIT: It's the same with namespaced and non-namespaced files. EDIT: I corrected the syntax mistakes >.> terribly sorry.

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    dousong2967 dousong2967 2012-10-06 13:17

    You should only run one of the two: eaccelerator or APC. They both do the same thing, opcode cache your compiled PHP. I would go with APC since you can also use its user cache for in memory caching--most frameworks support using it as a cache backend.

    点赞 评论 复制链接分享
  • drxrgundk062317205 drxrgundk062317205 2012-10-06 13:18

    Well not sure if that is only because you made up that simplified test case.

    But in the code you offer the try block is never closed. So it might well be that the exception you throw never gets caught...

    点赞 评论 复制链接分享