生成PHP文件以缓存XML数据

时间:2011-12-23 00:27:37

标签: php zend-framework

我目前正在使用Zend FrameworkPHP 5.3开发一个Web应用程序。我有一个XML文件,其中包含配置和映射信息(+ - 1500行)。在每个请求中,我执行xpath查询以从XML文件中获取信息。 XML文件中的信息是静态的,在部署应用程序后不会更改。

最好在第一个请求中生成一个包含静态数组中XML信息的php文件,然后在每个请求上加载该php文件以获取信息,而不是在{ {1}}?

2 个答案:

答案 0 :(得分:1)

由于XML在部署后没有发生变化,我认为最好在本地开发环境中转换XML,而不是在需要时转换到生产系统。在生产系统上生成源代码并不是一个好主意,它将自动包含在内而无需任何验证。

我对XSLT并不是很熟悉,但根据XML的具体结构,它可能是你的选择。

答案 1 :(得分:1)

您可以使用var_export将已解析的配置文件缓存为源文件。

生成缓存资源的代码在Zend Framework中的几个地方实现,例如自动加载器,所以我认为这是一个很好的做法。

还有另一种方法可以缓存它 - 使用serialize(确保序列化一个数组,而不是像SimpleXML对象)或者Zend_Cache,它或多或少相同,但在结果存储方面更灵活。