SimpleXMLElement::__construct
(PHP 5, PHP 7)
SimpleXMLElement::__construct — 新しい SimpleXMLElement オブジェクトを作成する
説明
final public SimpleXMLElement::__construct
( string $data
[, int $options
= 0
[, bool $data_is_url
= false
[, string $ns
= ""
[, bool $is_prefix
= false
]]]] )
新しい SimpleXMLElement オブジェクトを作成します。
パラメータ
data
整形式 XML 文字列。 もし
data_is_url
がtrue
の場合には、XML ドキュメントへのパスあるいは URL。options
オプションで、XML文書を読み込む場合に影響する 追加の Libxml パラメータを指定するために使います。 XML文書を出力する場合に影響するオプション(例:
LIBXML_NOEMPTYTAG
) は静かに無視されます。注意:
深くネストされた XML や巨大なテキストノードを処理する際には
LIBXML_PARSEHUGE
を指定することになるでしょう。data_is_url
デフォルトでは
data_is_url
はfalse
です。data
が、文字列データではなく XML ドキュメントへのパスあるいは URL である場合にtrue
を使用します。ns
名前空間プレフィックスあるいは URI。
is_prefix
ns
がプレフィックスの場合はtrue
、 URI の場合はfalse
。デフォルトはfalse
。
エラー / 例外
XML データ内でエラーが見つかるたびに E_WARNING
エラーメッセージが発生します。さらに、XML データのパースに失敗した場合は例外をスローします。
ヒント libxml_use_internal_errors() ですべての XML エラーを抑制し、 後から libxml_get_errors() で取得することもできます。
変更履歴
バージョン | 説明 |
---|---|
5.2.0 | ns と is_prefix が追加されました。
|
5.1.2 | options と data_is_url が追加されました。
|
例
注意:
この例では
example.php
をインクルードしていますが、これは 基本的な使用法 の最初のサンプルにある XML 文字列を参照しています。
例1 SimpleXMLElement オブジェクトの作成
<?phpinclude 'example.php';$sxe = new SimpleXMLElement($xmlstr);echo $sxe->movie[0]->title;?>
上の例の出力は以下となります。
PHP: Behind the Parser
例2 URL からの SimpleXMLElement オブジェクトの作成
<?php$sxe = new SimpleXMLElement('http://example.org/document.xml', NULL, TRUE);echo $sxe->asXML();?>
参考
- 基本的な SimpleXML の使用法
- simplexml_load_string() - XML 文字列をオブジェクトに代入する
- simplexml_load_file() - XMLファイルをパースし、オブジェクトに代入する
- XML エラーの対応
- libxml_use_internal_errors() - libxmlエラーを無効にし、ユーザーが必要に応じてエラー情報を取得できるようにする