downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

simplexml_load_file> <SimpleXML 関数
Last updated: Fri, 13 Nov 2009

view this page in

simplexml_import_dom

(PHP 5)

simplexml_import_domDOM ノードから SimpleXMLElement オブジェクトを取得する

説明

SimpleXMLElement simplexml_import_dom ( DOMNode $node [, string $class_name = "SimpleXMLElement" ] )

この関数は、DOM ドキュメントのノードを引数とし、 SimpleXML ノードを作成します。この新しいオブジェクトは、 この後、通常の SimpleXML 要素として使用できます。

パラメータ

node

DOM 要素ノード。

class_name

このオプションパラメータを使用すると、 simplexml_import_dom() は指定したクラスのオブジェクトを返します。このクラスは SimpleXMLElement を継承していなければなりません。

返り値

SimpleXMLElement、あるいは失敗した場合に FALSE を返します。

例1 DOM のインポート

<?php
$dom 
= new DOMDocument;
$dom->loadXML('<books><book><title>blah</title></book></books>');
if (!
$dom) {
    echo 
'ドキュメントのパース時にエラーが発生しました';
    exit;
}

$s simplexml_import_dom($dom);

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

参考

  • dom_import_simplexml() - SimpleXMLElement オブジェクトから DOMElement オブジェクトを取得する



add a note add a note User Contributed Notes
simplexml_import_dom
peter-SPAMrubbish-ATveridon.com
06-Mar-2008 07:06
Something that surprised me, any changes made to the SimpleXML object obtained from the imported DOMDocument also change the original DOMDocument.

e.g.

<?php

$string
= '<root><foo>abc</foo></root>';
$domxml = DOMDocument::loadXML($string);
$simplexml = simplexml_import_dom($domxml);
$simplexml->foo = "xyz";
$simplexml->bar = "123";
echo
$domxml->saveXML();

?>
Outputs:

--START--
<?xml version="1.0"?>
<root><foo>xyz</foo><bar>123</bar></root>
spam AT media MINUS soma DOT de
26-Jul-2006 04: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--

simplexml_load_file> <SimpleXML 関数
Last updated: Fri, 13 Nov 2009
 
 
show source | credits | sitemap | contact | advertising | mirror sites