-1

私はphpにこの文字列を持っています。この文字列はすでにxmlのように適切にフォーマットされていると思います:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Books>
<ID>1</ID>
<Title>Programming 1</Title>
<ISBN>1234567890001</ISBN>
<Author>Kevin</Author>
<Abstract>This Book is about programming</Abstract>
</Books>


だから私は simplexml_load_string() 関数を使用してこの文字列を xml に変換しますが、問題は決して xml として返されないため、print_r() を実行するたびに、次のようになります。

SimpleXMLElement オブジェクト ( )

いつものようにすべてのツリーとノードを含める必要があると思いますが、返されるオブジェクトは常に null です。私はすでに他のいくつかの方法を試しました。しかし、それらはすべて空白の XML オブジェクトである同じ結果をもたらします。
私の文字列形式に何か問題がありますか? または、私のコードに何か問題があるかもしれません。ここに私のコードがあります:

<?php

$ISBN=$_POST["ISBN"];
$url='http://localhost:8080/Programming/services/hello_world/DatabaseSearch?ISBN='.$ISBN;
$xmlstr = file_get_contents($url);
echo $xmlstr;
$xml=simplexml_load_string($xmlstr);
echo $xml->Books->Title;
print_r($xml);
?>

echo $xml->Books->Title;

null 値のみを返します。だから私は実際に何が間違っているのか分かりません.私はすでに何日もこれを修正しようとしていますが、結果はありません. 私を助けてください..

4

1 に答える 1

0

でタイトルを取得できます echo $xml->Title;

実際$xml=simplexml_load_string($xmlstr);にルートノードを返す

また、xmlに他のノードがないため、タイトルを取得できますecho $xml->Title;

詳細については、SimpleXML と print_r() を参照してください - なぜこれは空なのですか?

于 2013-10-25T17:08:38.187 に答える