PHP-XML解析单例类只解析XML一次


PHP - Will an XML-parsing singleton class only parse the XML once?

我有一个类,它用simplexml从XML文件中读取一些设置。如果我以singleton样式构建它,并将这些设置保存在一个可公开访问的数组中,这是否意味着它只能有效地检索一次文件?

基本上,在一个简化的形式中,这个:

class myClass {
    public $_requestConfiguration;
    public $_conditions;
    public $_requestSets;
    private static $_instance;
    private function __construct() {
        $configFile = simplexml_load_file(APPLICATION_PATH.'/configs/chapter_requests.xml');
        $this->_requestConfiguration = $configFile->requests->request;
        $this->_conditions = $configFile->conditions;
        $this->_requestSets = $configFile->request_sets;
    }
    public static function getInstance() {
        if (null === self::$_instance) {
            self::$_instance = new self();
        }
        return self::$_instance;
    }
}

您实际上只有一个实例,并且对于脚本的执行,XML文件将只读取一次。

当脚本执行完毕后,所有内容都将从内存中删除,并且在下次运行时,您的"singleton"将再次开始读取XML,因为静态实例不再存储在内存中。

我在这里也问过同样的问题。

是。

添加滑稽的玩笑达到最少30个字符。