使用缓存使用XMLReader PHP解析xml文件

使用缓存使用XMLReader PHP解析xml文件,php,caching,serialization,xml-parsing,xmlreader,Php,Caching,Serialization,Xml Parsing,Xmlreader,我需要使用PHP的XMLReader解析几个XML文件。整个解析结果需要存储在内存中,并带有一个数组。因此,数组将包含每个文件的结果 我还需要使用缓存机制(带有序列化)。我是这样想的: 我解析xml文件 如果xml文件不在缓存中,我将xml文件的解析结果保存在缓存中(带有序列化) 如果文件在缓存中,我需要获取它的内容 我怎样才能达到最后一点?我不想为了将结果加载到内存中并将其保存在数组中而对文件进行反序列化 最终输出应该是这样的: 文件1解析结果: $result['archive']='arc

我需要使用PHP的XMLReader解析几个XML文件。整个解析结果需要存储在内存中,并带有一个数组。因此,数组将包含每个文件的结果

我还需要使用缓存机制(带有序列化)。我是这样想的:

  • 我解析xml文件
  • 如果xml文件不在缓存中,我将xml文件的解析结果保存在缓存中(带有序列化)
  • 如果文件在缓存中,我需要获取它的内容
  • 我怎样才能达到最后一点?我不想为了将结果加载到内存中并将其保存在数组中而对文件进行反序列化

    最终输出应该是这样的:

    文件1解析结果:

    $result['archive']='archive/';
    $result['color']='yellow';
    $result['house/height']='200';
    
    $result['house/width']='100';
    $result['trial']='true';
    
    文件2解析结果:

    $result['archive']='archive/';
    $result['color']='yellow';
    $result['house/height']='200';
    
    $result['house/width']='100';
    $result['trial']='true';
    
    最终结果:

    $result['archive']='archive/';
    $result['color']='yellow';
    $result['house/height']='200';
    $result['house/width']='100';
    $result['trial']='true';
    

    谢谢你的帮助

    好吧,我想你怎么做将取决于你用什么缓存。你对此做过研究吗?如果你只是头脑风暴,那么在这里提问确实有点早。也许可以看看Memcache或Redis的缓存引擎。这两个缓存引擎有许多php连接器。。