PHP, какая версия поддерживает simplexml cdata

Из какой версии PHP 5 simplexml_load_file поддерживает CDATA?

 $xml = @simplexml_load_file($url, NULL, LIBXML_NOCDATA);

Спасибо!!


person Rik de Vos    schedule 06.09.2011    source источник
comment
Вы здесь немного противоречите сами себе; вам нужна поддержка CDATA, но вы установили флаг LIBXML_NOCDATA?   -  person Bojangles    schedule 06.09.2011
comment
я считаю, что LIBXML_NOCDATA предотвращает экранирование cdata и оставление объекта. см.: us3.php.net/manual/en/ function.simplexml-load-file.php#85484   -  person gregghz    schedule 06.09.2011
comment
CDATA не исключен из объекта, он просто не виден в var_dump, print_r и т. д., что вызывает путаницу. Нет необходимости передавать LIBXML_NOCDATA для нормальной работы с SimpleXML; для объяснения того, что он на самом деле делает, см. stackoverflow.com/a/13981917/157957   -  person IMSoP    schedule 30.05.2013


Ответы (3)


Я не совсем уверен, что это отвечает на ваш вопрос (может помочь некоторая ясность?), но я нашел это на php.net:

http://us3.php.net/manual/en/function.simplexml-load-file.php#82067

«Для этого требуется версия PHP> = 5.1.0»

person gregghz    schedule 06.09.2011
comment
Он также поддерживает CDATA из этой версии? - person Rik de Vos; 07.09.2011
comment
единственное, что мне ясно, это то, что 5.1 требуется для включения CDATA в объект. Я не уверен, что происходит при использовании php ‹ 5.1. - person gregghz; 07.09.2011
comment
PHP 5.1 требуется для поддержки опции LIBXML_NOCDATA; не включать CDATA в объект, потому что CDATA есть всегда - он просто не виден в var_dump, print_r и т.д. - person IMSoP; 30.05.2013

Как в http://php.net/manual/en/function.simplexml-load-file.php сказал, я думаю из версии PHP >= 5.1.0

person John Skoumbourdis    schedule 06.09.2011

SimpleXML поддерживает CDATA в любой версии, и нет необходимости передавать LIBXML_NOCDATA. См. https://stackoverflow.com/a/13830559/157957 и https://stackoverflow.com/a/16842431/157957

person IMSoP    schedule 30.05.2013