simplexml_load_string

(PHP 5, PHP 7, PHP 8)

simplexml_load_string Interprets a string of XML into an object

說明

simplexml_load_string(
    string $data,
    ?string $class_name = SimpleXMLElement::class,
    int $options = 0,
    string $namespace_or_prefix = "",
    bool $is_prefix = false
): SimpleXMLElement|false

Takes a well-formed XML string and returns it as an object.

參數(shù)

data

A well-formed XML string

class_name

You may use this optional parameter so that simplexml_load_string() will return an object of the specified class. That class should extend the SimpleXMLElement class.

options

Since Libxml 2.6.0, you may also use the options parameter to specify additional Libxml parameters.

namespace_or_prefix

Namespace prefix or URI.

is_prefix

true if namespace_or_prefix is a prefix, false if it's a URI; defaults to false.

返回值

Returns an object of class SimpleXMLElement with properties containing the data held within the xml document, 或者在失敗時返回 false.

警告

此函數(shù)可能返回布爾值 false,但也可能返回等同于 false 的非布爾值。請閱讀 布爾類型章節(jié)以獲取更多信息。應(yīng)使用 === 運算符來測試此函數(shù)的返回值。

錯誤/異常

Produces an E_WARNING error message for each error found in the XML data.

小技巧

Use libxml_use_internal_errors() to suppress all XML errors, and libxml_get_errors() to iterate over them afterwards.

范例

示例 #1 Interpret an XML string

<?php
$string 
= <<<XML
<?xml version='1.0'?> 
<document>
 <title>Forty What?</title>
 <from>Joe</from>
 <to>Jane</to>
 <body>
  I know that's the answer -- but what's the question?
 </body>
</document>
XML;

$xml simplexml_load_string($string);

print_r($xml);
?>

以上例程會輸出:

SimpleXMLElement Object
(
  [title] => Forty What?
  [from] => Joe
  [to] => Jane
  [body] =>
   I know that's the answer -- but what's the question?
)

At this point, you can go about using $xml->body and such.

參見