我有一个类,它用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个字符。