PHP simplexml_load_file()Функции

PHP SimpleXML 参考手册Справочное руководство по PHP SimpleXML

Примеры

Преобразуйте XML-файл в объект SimpleXMLElement, затем выведите ключи и элементы объекта:

<?php
$xml=simplexml_load_file("note.xml");
print_r($xml);
?>

Запустить пример »

Определение и использование

Функция simplexml_load_file() преобразует указанный XML-файл в объект SimpleXMLElement.


Синтаксис

simplexml_load_file(file,classname,options,ns,is_prefix);

Parameters Описание
файл Обязательный. Указывает путь к XML-файлу.
classname Необязательный. Указывает класс нового объекта.
options Необязательный. Задает дополнительные параметры Libxml. Устанавливается путем указания параметра как 1 или 0 (TRUE или FALSE, например LIBXML_NOBLANKS(1)).

Возможные значения:

  • LIBXML_COMPACT — Активирует оптимизацию конфигурации узлов (может ускорить работу приложения)
  • LIBXML_DTDATTR — Устанавливает атрибуты DTD по умолчанию
  • LIBXML_DTDLOAD — Загружает дополнительное подмножество
  • LIBXML_DTDVALID — Проверяет валидность DTD
  • LIBXML_NOBLANKS — удалять пустые узлы
  • LIBXML_NOCDATA — представлять CDATA как текстовые узлы
  • LIBXML_NOEMPTYTAG — разворачивать пустые теги (например, <br/> в <br></br>), допустимо только в функциях DOMDocument->save() и DOMDocument->saveXML()
  • LIBXML_NOENT — подставлять сущности
  • LIBXML_NOERROR — не показывать отчёты об ошибках
  • LIBXML_NONET — не обращаться к сети при загрузке документов
  • LIBXML_NOWARNING — не показывать отчёты о предупреждениях
  • LIBXML_NOXMLDECL — отбрасывать XML-декларацию при сохранении документа
  • LIBXML_NSCLEAN — удалять избыточные объявления пространств имён
  • LIBXML_PARSEHUGE — установить флаг XML_PARSE_HUGE, чтобы ослабить любые жёсткие ограничения парсера. Это влияет на такие параметры, как максимальная глубина документа и ограничения на размер текстовых узлов.
  • LIBXML_XINCLUDE — использовать подстановку XInclude
  • LIBXML_ERR_ERROR — получать восстанавливаемые ошибки
  • LIBXML_ERR_FATAL — получить фатальные ошибки
  • LIBXML_ERR_NONE — не получать ошибки
  • LIBXML_ERR_WARNING — получать простые предупреждения
  • LIBXML_VERSION — получить версию libxml (например, 20605 или 20617)
  • LIBXML_DOTTED_VERSION — получить точечную версию libxml (например, 2.6.5 или 2.6.17)
ns Необязательный. Указывает префикс пространства имён или URI.
is_prefix Необязательно. Задает логическое значение. Еслиns— это префикс, то TRUE, еслиns— это URI, то FALSE. По умолчанию FALSE.

Технические детали

Возвращаемое значение: Возвращает объект SimpleXMLElement при успехе или FALSE при ошибке.
Версия PHP: 5+


Другие примеры

Предположим, у нас есть следующий XML-файл, "note.xml":

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Напоминание</heading>
<body>Не забудь меня в эти выходные!</body>
</note>

Пример 1

Вывести данные каждого элемента в XML-файле:

<?php
$xml=simplexml_load_file("note.xml");
echo $xml->to . "<br>";
echo $xml->from . "<br>";
echo $xml->heading . "<br>";
echo $xml->body;
?>

Запустить пример »

Пример 2

Выведите имена элементов и данные каждого дочернего узла в XML-файле:

<?php
$xml=simplexml_load_file("note.xml");
echo $xml->getName() . "<br>";

foreach($xml->children() as $child)
{
echo $child->getName() . ": " . $child . "<br>";
}
?>

Запустить пример »


PHP SimpleXML 参考手册Справочное руководство по PHP SimpleXML Другие расширения