simplexml_import_dom

(PHP 5)

simplexml_import_dom --  Get a SimpleXMLElement object from a DOM node.

Description

SimpleXMLElement simplexml_import_dom ( DOMNode node [, string class_name] )

This function takes a node of a DOM document and makes it into a SimpleXML node. This new object can then be used as a native SimpleXML element. If any errors occur, it returns FALSE.

例子 1. Import DOM

<?php
$dom
= new domDocument;
$dom->loadXML('<books><book><title>blah</title></book></books>');
if (!
$dom) {
    echo
'Error while parsing the document';
    exit;
}

$s = simplexml_import_dom($dom);

echo
$s->book[0]->title; // blah
?>

See also dom_import_simplexml().


add a note add a note User Contributed Notes
spam AT media MINUS soma DOT de
27-Jul-2006 12:27
Please note that a valid SimpleXMLElement is typecasted to false.

<?php

   $string
= '<root><foo>abc</foo></root>';
  
$xml = DOMDocument::loadXML($string);
  
$xml = simplexml_import_dom($xml);
   echo
'simplexml_import_dom';
  
var_dump($xml);
  
var_dump((bool)$xml);

  
$xml = simplexml_load_string('<root><foo>abc</foo></root>');
   echo
'simplexml_load_string';
  
var_dump($xml);
  
var_dump((bool)$xml);

  
$xml = simplexml_load_file('test.xml');
   echo
'simplexml_load_file';
  
var_dump($xml);
  
var_dump((bool)$xml);

?>

Outputs:

--START--
simplexml_import_dom

object(SimpleXMLElement)[2]
  public 'foo' => 'abc'

false

simplexml_load_string

object(SimpleXMLElement)[1]
  public 'foo' => 'abc'

false

simplexml_load_file

object(SimpleXMLElement)[2]
  public 'foo' => 'abc'

false
--END--