XML_PARSE_HUGE для функции simplexml_load_string () - PullRequest
5 голосов
/ 25 марта 2011

Константа XML_PARSE_HUGE может быть передана в качестве третьего аргумента simplexml_load_string().В соответствии с php.net этот флаг:

ослабляет любой жестко заданный предел из анализатора.

Что такое "жестко заданный предел по умолчанию изparser "?

Я думаю, что расслабление немного двусмысленно.Устраняет или увеличивает «жестко заданный лимит»?

Ответы [ 2 ]

4 голосов
/ 25 марта 2011

С http://bugs.php.net/49660:

Начиная с версии 2.7.3, libxml ограничивает максимальный размер отдельного текстового узла 10 МБ.Предел может быть удален с помощью новой опции, XML_PARSE_HUGE.У PHP нет возможности указать эту опцию для libxml.

Так что я думаю, что этот флаг - это способ, которым PHP теперь должен указывать эту опцию.

3 голосов
/ 03 июня 2013

время сдвинулось: http://php.net/manual/en/libxml.constants.php

LIBXML_PARSEHUGE - Устанавливает флаг XML_PARSE_HUGE, который ослабляет любые жестко заданный лимит из парсера. Это влияет на ограничения как максимум глубина документа или рекурсии объекта, а также пределы размер текстовых узлов.
Доступно только в Libxml> = 2.7.0 (по состоянию на PHP> = * 5.3.2 и PHP> = 5.2.12) *

//example of use
$xmlDoc = new DOMDocument();
$xmlDoc->loadXML( $xml , LIBXML_PARSEHUGE );
...