gpt4 book ai didi

php - 无法从 PHP 读取大型 XML 文件

转载 作者:可可西里 更新时间:2023-11-01 00:16:13 26 4
gpt4 key购买 nike

我有一个巨大的 XML 文件(114 KB/1719 行;请参阅下面的错误消息,为什么我说巨大)并且我尝试像之前阅读两个类似文件一样阅读它。

其他两个文件加载正常并且大小相当,唯一的区别是所讨论的文件包含阿拉伯文本。所以这是 PHP 代码:

$doc3 = new DOMDocument('1.0', 'utf-8');
$doc3->load($masternumber.'.xml');

错误是:

Warning: DOMDocument::load() [domdocument.load]: Excessive depth in document: 256 use XML_PARSE_HUGE option in file: ...

然后 $doc3 不加载文件。所以我修改了代码:

$doc3->load($masternumber.'.xml', "LIBXML_PARSEHUGE");

最后我收到另一个警告:

Warning: DOMDocument::load() expects parameter 2 to be long, string given in...

$doc3 又是空的。

它有什么问题?其他文件包含其他语言的相同文本并正确加载但不是这个?我正在使用 PHP 5.3.9。

最佳答案

使用常量,而不是字符串。

$doc3->load($masternumber.'.xml', LIBXML_PARSEHUGE);

参见 DOMDocument::load()文档以获取完整的详细信息。第二个参数是一个长整数,表示从 list of constants 中选择的选项。 .

顺便说一句,如果您出于任何原因需要多个选项,可以通过将它们与按位或运算符组合来完成 |

// Multiple options  OR'd together...
// Just FYI, not specific to your situation...
$doc3->load($masternumber.'.xml', LIBXML_PARSEHUGE|LIBXML_NSCLEAN);

关于php - 无法从 PHP 读取大型 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9080657/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com