我目前正在使用Zend Framework
和PHP 5.3
开发一个Web应用程序。我有一个XML
文件,其中包含配置和映射信息(+ - 1500行)。在每个请求中,我执行xpath
查询以从XML
文件中获取信息。 XML
文件中的信息是静态的,在部署应用程序后不会更改。
最好在第一个请求中生成一个包含静态数组中XML
信息的php文件,然后在每个请求上加载该php文件以获取信息,而不是在{ {1}}?
答案 0 :(得分:1)
由于XML在部署后没有发生变化,我认为最好在本地开发环境中转换XML,而不是在需要时转换到生产系统。在生产系统上生成源代码并不是一个好主意,它将自动包含在内而无需任何验证。
我对XSLT并不是很熟悉,但根据XML的具体结构,它可能是你的选择。
答案 1 :(得分:1)
您可以使用var_export将已解析的配置文件缓存为源文件。
生成缓存资源的代码在Zend Framework中的几个地方实现,例如自动加载器,所以我认为这是一个很好的做法。
还有另一种方法可以缓存它 - 使用serialize(确保序列化一个数组,而不是像SimpleXML对象)或者Zend_Cache,它或多或少相同,但在结果存储方面更灵活。