讀取大型XML文件,我有一個巨大的XML文件(114 KB/1719線;見下文爲什麼我說巨大錯誤消息),我試着去閱讀它,因爲我已經有兩個類似的做文件之前。無法從PHP
其他兩個文件正常加載並且大小相當,唯一的區別是所涉及的文件包含阿拉伯文本。因此,這裏是PHP代碼:
$doc3 = new DOMDocument('1.0', 'utf-8');
$doc3->load($masternumber.'.xml');
和錯誤是:
警告:DOM文檔::負載()[domdocument.load]:過度深度文件:文件256使用XML_PARSE_HUGE選項:...
然後$doc3
不加載文件。所以我修改了代碼:
$doc3->load($masternumber.'.xml', "LIBXML_PARSEHUGE");
我最終與另一warrning:
警告:DOM文檔::負載()預計參數2長,字符串中給定的...
$doc3
再次爲空。
它有什麼問題?其他文件包含其他語言的相同文本並正確加載,但不是這一個?我正在使用PHP 5.3.9。
它是一個常數。'$ doc3->負載($ masternumber'XML ',LIBXML_PARSEHUGE);' – Gordon 2012-01-31 14:01:01
在旁註:當您使用任何load *方法並使用它在XML prolog中找到的任何內容時,DOMDocument將放棄您放入ctor中的任何內容,因此新的DOMDocument('1.0','utf- 8')毫無意義。 – Gordon 2012-01-31 14:04:22