2012-03-25 7 views
0

PHP用のsimpleXMLで動作するようには思えません。SimpleXMLを使用するこの試みで何が問題になっていますか?

$xml = simplexml_load_string('<book><title>The Title</title></book>'); 
$title = $xml->book->title; 
echo "<pre>title = $title\n</pre>"; 

出力結果は次のとおりです:

title = 

はなぜとしては、以下の出力ではありません、以下の何が問題になっているのですか?

title = The Title 

助言してください。

答えて

3

を見てみましょう。

$xml = simplexml_load_string('<book><title>The Title</title></book>'); 
$title = $xml->title; 
echo "<pre>title = $title\n</pre>"; 

// Prints 
<pre>title = The Title 
</pre> 

構造は、より容易に発見された場合、あなたvar_dump()それ:

var_dump($xml); 
object(SimpleXMLElement)#1 (1) { 
    ["title"]=> 
    string(9) "The Title" 
} 
-2

は私がいる問題は、あなたがXMLオブジェクトを作成していないと、そのオブジェクトのメソッドを使用しようとしているということである疑いが何

$str = '<book><title>The Title</title></book>'; 
$xml = new SimpleXMLElement($str); 

$title = $xml->book->title; 

echo $title; 

を試してみてください。あなたのコードスニペットを前提にしています。

<book>は、このスニペットのルートノードであるので、あなたは$xml->titleではなく$xml->book->titleが必要PHP: Simple XML

関連する問題