在任何操作系统中,php都可以以“模块”和“CGI”方式工作。最有可能实现楼主所期望的效果的应该只是“模块”方式,“CGI”方式因实际到进程间的通讯,所以不大可能。require_once在php的预编译期间检查准备嵌入的文件是否已经载入了,如果是则不再载入。
所以并不具备楼主所期望的效果。php是这样工作的:
接收到web服务器转交的请求后
1、启动预编译程序将本次请求所涉及的php程序编译成伪处理机代码
2、启动伪处理机执行伪处理机代码
3、返回运行结果
除了在第一阶段可以缓存编译后的代码外,其他阶段都不可以php虽然没有提供预编译指令,但在程序员的干涉下,同一个程序可能会因环境的变化而产生不同的目标代码。
于是使用“缓存编译后的代码”是有一定的风险的。综上说述,php并不具备楼主所期望的效果。顺便说一下,zend及其他类似工具之所以能提高php程序的运行速度的原因在于:他们不需要每次“预编译”php程序!

解决方案 »

  1.   

    不知道http://website.9team.com/1/186.htm
      

  2.   

    唠叨是不是说用模块的方式运行时就是一个请求一个运行空间?
    我觉得用require_once其实就是将一段共用的代码包含进来,不存在什么楼主说的"创建一份独立的内存空间"。
      

  3.   

    2m的文件...
    建议把2m的东西分开多个文件,然后A文件里面判断get参数,再根据判断结果include相应文件好了.
      

  4.   

    2M???
    太恐怖了
    我的zxphplib就300多K
      

  5.   

    require_once 是调用一次,如果存在就不再调用。那么请问如果是include呢?会不会有楼主的那种情况?关注中...
      

  6.   

    知道了。
    我原以为他具备MFC的类缓冲机制。
    不过,个人认为这个也是个趁势。