XML DOM文档优化

2023-12-06

我有一个 5MB 的 XML 文件

我使用以下代码来获取所有nodeValue

$dom = new DomDocument('1.0', 'UTF-8');
if(!$dom->load($url))
    return;

$games = $dom->getElementsByTagName("game");
foreach($games as $game)
{
            
}

这需要 76 秒,大约有 2000 个games标签。是否有任何优化或其他解决方案来获取数据?


我曾经写过一篇关于使用 XMLReader 加载巨大的 XML 文件- 你也许可以使用其中的一些。

使用 DOM 或 SimpleXML 是不可行的,因为两者都将整个文档加载到内存中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XML DOM文档优化 的相关文章

  • 如何将对象(模型类型对象)插入到 Laravel 中 Collection 对象的特定索引号处?

    我读过戴尔 里斯的代码明亮 https daylerees com codebright 了解更多关于雄辩的信息Collection在 Laravel 中使用 还做了一些其他研究 但找不到我正在寻找的答案 我想插入一个对象 Model输入对
  • Ajax 与 chrome 扩展

    我将 url 发送到 chrome 扩展中的 php 文件 并需要获得响应 但不起作用 清单 json name Get pages source version 1 0 manifest version 2 description Get
  • 使用 PHP 分割逗号分隔名称

    我的名字格式为姓氏 名字 在我的数据库中 第一个和最后一个字段都有不同的字段 我想使用 PHP 读取逗号之前的所有内容作为姓氏 以及逗号之后的所有内容作为名字 实现这一目标的最佳方法是什么 list Lastname Firstname e
  • 这是过滤数据并防止 SQL 注入和其他攻击的安全方法吗?

    我创建了两个简单的函数来在插入数据进入 mysql 查询之前对其进行过滤 对于表单字段 我还使用正则表达式来单独检查每个字段 Form filter function filter var HTML is not allowed var s
  • 提交简单 PHP 表单时出现禁止错误

    我有一个不复杂的问题 这似乎比应有的更复杂 我有一个简单的表单 用于向网站添加内容 有些字段需要输入html 然而 当您在表单的不同部分输入某些 html 元素时 它会认为它讨厌您并抛出禁止的 403 错误 这是下面的表格
  • json_decode 到自定义类

    是否可以将 json 字符串解码为 stdClass 以外的对象 不是自动的 但你可以按照老式的路线来做 data json decode json true class new Whatever foreach data as key g
  • 在 Python 中使用 XPath 和 LXML

    我有一个 python 脚本 用于解析 XML 并将某些感兴趣的元素导出到 csv 文件中 我现在尝试更改脚本以允许根据条件过滤 XML 文件 等效的 XPath 查询将是 DC Events Confirmation contains T
  • 如何使用 PATCH 更新简单的数据库字段?

    我是 php 和 API 的新手 我正在尝试学习这些方法 但我无法执行 PATCH 或 PUT 来更新我的简单 mysql 数据库 我使用了以下代码 if isset PATCH con mysqli connect localhost r
  • PHP、PDO 和 SQLSRV 对一个 INSERT 语句执行多次

    我已经在 MySQL 和 Apache 服务器上使用 PDO 和 PHP 一段时间了 我最近的任务是将企业的旧 Web 应用程序转换为新设置 旧设置是标准 Linux Web 堆栈 Apache PHP MySQL Filezilla 新设
  • Twitch API - 无法使用 PHP 获取身份验证令牌

    stackoverflow 的成员们大家好 我不是一个喜欢寻求帮助的人 但在这种情况下 我认为这是解决我的问题的唯一方法 谷歌并没有给我太大帮助 所以 我的问题 我想使用 Twitch API 获取一些数据 听起来很容易 我希望是这样 下面
  • 唯一的图像哈希值即使 EXIF 信息更新也不会改变

    我正在寻找一种方法来为 python 和 php 中的图像创建唯一的哈希值 我考虑过对原始文件使用 md5 和 因为它们可以快速生成 但是当我更新 EXIF 信息 有时时区关闭 时 它会更改总和 并且哈希也会更改 有没有其他方法可以为这些文
  • “序言中不允许有内容”错误,但 XML 声明之前没有任何内容

    首先我已经详尽地检查了以下问题 这个问题似乎不是同一件事 SAXParseException 序言中不允许有内容 https stackoverflow com q 20551572 1571426 org xml sax SAXParse
  • php - 重定向ajax请求[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在 php wordpress 中重定向 ajax 请求 I tried header Location http redirect
  • LinearLayout:防止最后一个孩子被之前的大文本视图推出或挤压

    我有一个LinearLayout里面有两个孩子 第一个是TextView对于动态内容 第二个是一个按钮 我的问题是按钮被推出其父级或被挤压到不再可见的程度 我想要TextView认识到其父母与第二个孩子一起没有更多空间 并开始新的一行 而不
  • Google Drive V3、Google API 客户端 2.0 - 批量上传失败

    使用 Google Drive V3 和 API v2 0 主分支进行批量上传失败 我已经修改了https github com google google api php client blob master examples batch
  • 安全地评估简单的数学

    我想知道是否有一种安全的方法来评估数学 例如 2 2 10000 12000 10000 20 2 2 40 20 23 12 无需使用eval 因为输入可以来自任何用户 我需要实现的只是整数的加法和减法 是否有任何已经存在的代码片段 或者
  • 访问 PHP 数组对象受保护的属性

    我正在尝试在 Symfony2 中上传多个文件 我正在尝试访问以下请求对象 但无法获取参数属性 如何将文件一一上传 我得到的错误 致命错误 无法访问第 66 行 var www File src Webmuch FileBundle Ent
  • Laravel 5 Eloquent 在多个级别上将关系附加到 JSON

    因此 在模型中包含关系非常容易 例如 class User extends Model protected with roles class Role extends Model protected with permissions 当有对
  • Yii2 无效调用:设置只读属性

    我有一个Post具有多对多关系的模型Tags 在 Post 模型中定义 public function getTags return this gt hasMany Tags className id gt tag id gt viaTab
  • 突出显示单词并提取其附近文本的函数

    我有一个文本例如 Etiam porta semmalesuada magna mollis euismod 整数取数 ante venenatis dapibus posuere velit aliquet 埃蒂亚姆 门塔 塞姆 male

随机推荐

  • 如何在R中将二进制小数转换为十进制小数?

    我需要编写一个函数 将二进制小数转换为 R 中的十进制小数 f 0 001 0 125 我做了什么 我搜索了R包中的相关函数 DescTools BinToDec 0 001 NA DescTools BinToDec 0 001 NA b
  • React Ionic 5:如何将对象从App组件传递到Tab组件

    我使用 Ionic 5 选项卡模板创建了一个 Ionic React 应用程序 我想将一个对象从应用程序组件传递到选项卡组件 有什么办法可以做到吗 Tab1 和 Tab2 是我的选项卡组件 Note 我希望这个对象在两个选项卡组件中使用两种
  • 扫描直到新行

    我想读取输入的所有文本 直到输入新行字符 这是我的代码 int i 0 char ch MAX printf Enter the text n while true scanf c ch i if ch i n break i 但当我尝试执
  • Clang 3.7.0 抱怨类不是字面意思,因为它不是聚合并且没有 constexpr 构造函数

    以下代码在 GCC 4 9 3 和 VC 19 00 23506 中编译良好 但在 Clang 3 7 0 中给出这些错误 错误 constexpr 函数的返回类型 Foo 不是文字类型 注意 Foo 不是字面意思 因为它不是聚合并且没有
  • C++ 中的向量初始化

    我在代码中使用向量 导致错误的行如下 vector
  • 如何使用 Vbscript 重写和写入文本文件

    我使用以下 VBscript 在 commonapplicationdatafolder 中创建了一个文本文件 list txt 我正在显示一些 通过写入文本文件来获取变量 strlist 的值 Const Value H23 Const
  • 使用 NSXMLParser initWithStream:未收到解析器委托方法

    我正在解决的基本问题是使用NSStream用于解析传入的增量 XML 数据的类 数据从来都不是完整的 XML 文档 但我希望根据套接字可以读取的数据量以增量块的形式接收和处理它 查看文档NSXMLParser 看起来像initWithStr
  • 如何使用 24 块色卡估计和应用色彩校正矩阵?

    我有一个 24 块色卡 我正在尝试使用所述色卡估计捕获图像的颜色校正矩阵 我已经手动估计了CCM使用least squares方法 但它没有产生理想的结果 有些图像在应用后会出现奇怪的阴影CCM 我仔细检查了我的代码 但没有发现任何问题 我
  • 将 grep 结果打印到文件和终端

    我正在尝试将 grep 结果显示到终端以及文件中 我提出的解决方案是只运行两次 但这显然会产生效率问题 grep n SEARCH TERM i grep n SEARCH TERM i gt gt file txt 是否有一个标签允许它仅
  • alert() 返回与 console.log() 不同吗?

    我应该使用alert 进行调试吗 或者是否有时间使用alert 与console log 我看到alert 和console log 可以返回不同的结果 我认为它们是类似的功能 但只是在不同的地方返回 背景故事 我的老板喜欢在开发过程中看到
  • 是否可以在Java中为数字框类型编写通用的+1方法?

    这不是家庭作业 Part 1 是否可以编写一个通用方法 如下所示
  • 搜索非 ASCII 字符

    我有一个文件 a out 其中包含多行 每一行只有一个字符 要么是 unicode 字符U 2013或小写字母a z 对 a out 执行文件命令会得到结果 UTF 8 Unicode 文本 locale 命令报告 LANG en US U
  • android应用程序可以只有广播接收器和服务而没有活动吗

    Android应用程序可以只有广播接收器和服务而没有活动吗 如果这是可能的 我如何调用广播接收器 Android 系统自动调用broadcsat 接收器 广播接收者代码 public class CheckReceiver extends
  • 在 opencart 中获取第三级类别

    我想要foreachOpenCart 类别模块的第三级 这是仅生成 2 级类别的代码 请帮助并修改 以便生成第三级 ul li a href a ul ul li ul
  • 如果没有 javascript 没有返回内容,如何隐藏 iframe

    我正在尝试制作一个具有特定大小的内容区域 但如果 api 返回的结果是 我希望不显示任何内容empty 这是 html 的代码 div class myclass div 我调用的 API 有时可能会返回 null 结果 JavaScrip
  • Curl : * 违反 RFC 2616/10.3.2 并从 POST 切换到 GET

    我正在使用curl 发布到脚本 curl setopt ch CURLOPT POST true curl setopt ch CURLOPT URL url curl setopt ch CURLOPT RETURNTRANSFER 1
  • 连接误差线的平均点

    在 ggplot2 中 我正在尝试做一件简单的事情 但由于某种原因我无法做到 我已经在数据框中调整了均值和 SE 并且想要绘制均值 误差线 然后将均值与点连接起来 这是代码和错误 除了将方法与geom line 与RC食谱 library
  • 无法使用 yum 或 rpm 在 Fedora 上安装 jdk

    帮助 我不知道如何安装jdk usr lib jvm su c yum install java 1 7 0 openjdk devel Loaded plugins langpacks presto refresh packagekit
  • XSLT 在没有命名空间的情况下复制元素

    首先我要说明的是 我并不是特别擅长 XSLT 但我想做的是将 3 个 XML 文档复制到一个父文档中 XSLT 工作正常 只是父节点使用 xmlns 属性打印 这导致我的验证失败 所以我的问题是如何从单独的文档中复制这些元素而不添加 xml
  • XML DOM文档优化

    我有一个 5MB 的 XML 文件 我使用以下代码来获取所有nodeValue dom new DomDocument 1 0 UTF 8 if dom gt load url return games dom gt getElements