搜了半天这个问题真的很复杂? 怎样在apache服务器启动时候(即我的php web应用启动)时候读取数据库取得一些数据,把这些数据设置到全局一个array中。系统启动后,我的php代码可以使用这些array的数据,还可以修改这个array的数据??
多谢!

解决方案 »

  1.   

    ……这个貌似有些apache几年都不关闭的,怎么办?
      

  2.   

    在构造函数里写入session,可行不?
      

  3.   

    建议你要么写apache的一个模块,要么写一个php的扩展,要么去修改php源代码吧
      

  4.   


    如此简单 如此普通的一个需求 pHP都做不到?! java,asp都可以,而且是很平常的事情!经常需要在应用程序启动的时候从数据库载入一些参数,这些参数在应用程序启动后被程序读取。用户也可以维护这些参数更新到内存! 多么普通的需求啊! 居然做不到?
      

  5.   

    序列化再保存到文件,下次读取文件再unserialize
      

  6.   


    你说的这些特性和你说的web server耦合性多高。java更改你的程序部署以后必须重新启动webserver,而php仅仅需要部署覆盖文件即可而asp呢,看看他只能在有限的web server(大部分都是window平台),而php则可以做为任意一个cgi程序跑在任意的webserver下这就是因为php抛弃了很多和服务器server耦合性很高的东西,而专注于做一个请求(进程)的具体事情,而没有过多的考虑那些跨请求(进程)的事情,这些需要靠你自己实现,要么webserver(通过一个新模块)给php提供,要么php(经过源码修改)自身来实现这一个目的,因为php没有办法获取webserver重启的状态,仅仅有获取请求的能力!
      

  7.   


    多谢!看来是不行了,这么说如果PHP干什么都要读数据库 没有内存使用机制 性能问题很难解决了
      

  8.   


    php的扩展是做什么的呢?要性能,靠扩展,要功能,靠扩展,要安全,靠扩展。php的内核很简单,但是它的功能可以通过扩展的方式来得到无限,这也就是是所谓的平台、插件式开发!开源的程序不都是这样的吗?
      

  9.   


    你是說通過擴展能夠實現我要的功能?怎么做啊,不是会写PHP模块吧
    BTW:php的日志在那里打开
      

  10.   

    php默认没有这个功能,也是php很多缺陷中的一个,它只是apache的一个模块而已可以设置一个内存虚拟盘,其他的就简单了,当文件一样操作