PHP simplexml_load_file() Function

Description

The simplexml_load_file() function converts the specified XML file into a SimpleXMLElement object.

Syntax

PHP simplexml_load_file() Function has the following syntax.

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

Parameter

ParameterIs RequiredDescription
fileRequired.Path to the XML file
classnameOptional.Class of the new object
optionsOptional.Additional Libxml parameters. Is set by specifying the option and 1 or 0 (TRUE or FALSE, e.g. LIBXML_NOBLANKS(1))
nsOptional.A namespace prefix or URI
is_prefixOptional.A Boolean value. TRUE if ns is a prefix. FALSE if ns is a URI. Default is FALSE

Possible values:

  • LIBXML_COMPACT - Activate nodes allocation optimization (may speed up application)
  • LIBXML_DTDATTR - Set default DTD attributes
  • LIBXML_DTDLOAD - Load external subset
  • LIBXML_DTDVALID - Validate with the DTD
  • LIBXML_NOBLANKS - Remove blank nodes
  • LIBXML_NOCDATA - Merge CDATA as text nodes
  • LIBXML_NOEMPTYTAG - Expand empty tags (e.g. <br/> to <br></br>), only available in the DOMDocument->save() and DOMDocument->saveXML() functions
  • LIBXML_NOENT - Substitute entities
  • LIBXML_NOERROR - Do not show error reports
  • LIBXML_NONET - Disable network access while loading documents
  • LIBXML_NOWARNING - Do not show warning reports
  • LIBXML_NOXMLDECL - Drop the XML declaration when saving a document
  • LIBXML_NSCLEAN - Remove redundant namespace declarations
  • LIBXML_PARSEHUGE - Sets XML_PARSE_HUGE flag, which relaxes any hardcoded limit from the parser. This affects limits like maximum depth of a document and limits of the size of text nodes
  • LIBXML_XINCLUDE - Implement XInclude substitution
  • LIBXML_ERR_ERROR - Get recoverable errors
  • LIBXML_ERR_FATAL - Get fatal errors
  • LIBXML_ERR_NONE - Get no errors
  • LIBXML_ERR_WARNING - Get simple warnings
  • LIBXML_VERSION - Get libxml version
  • LIBXML_DOTTED_VERSION - Get dotted libxml version

Return

Returns a SimpleXMLElement object on success. FALSE on failure.

Example

Convert an XML file into a SimpleXMLElement object, then output keys and elements of the object.

Assume we have the following XML file, "note.xml":


<?xml version="1.0" encoding="ISO-8859-1"?>
<book>//from  w w w .  j  a  v  a 2s  .  c o  m
    <name>PHP</name>
    <name>Java</name>
</book>

PHP code


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

Example 2

Output the data from each element in the XML file:


<?php/*from ww  w .j  ava 2s .c o m*/
$xml=simplexml_load_file("test.xml");
echo $xml->to . "\n";
echo $xml->from . "\n";
echo $xml->heading . "\n";
echo $xml->body;
?>

Example 3

Output the element's name and data for each child node in the XML file:


<?php//  w ww. j a  v a 2 s  .  c o  m
$xml=simplexml_load_file("test.xml");
echo $xml->getName() . "\n";

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




















Home »
  PHP Tutorial »
    Function reference »




PHP Array Functions
PHP Calendar Functions
PHP Class Functions
PHP Data Type Functions
PHP Date Functions
PHP File Functions
PHP Image Functions
PHP Math Functions
PHP MySQLi Functions
PHP SimpleXML Functions
PHP String Functions
PHP XML Functions
PHP Zip Functions