0

以下は、php メソッドでの REST Web サービス呼び出しからの応答として取得している xml です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response>
    <products>
      <capacity>1</capacity>
      <id>ae123</id>
      <group>Per</group>
      <name>xxxx</name>
    </products>
    <records>1
    </records>
</response>

Webサービスを呼び出してxmlデータを取得する私のphpメソッドは

function getAjaxProducts(){

    $path="my webservice url";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$path);
    curl_setopt($ch, CURLOPT_FAILONERROR,1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-type:     application/json'));
    $retValue = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    if($httpCode>400) {
            $retValue="<error><errorcode>".$httpCode."</errorcode></error>";
            echo $retValue;
    }

    curl_close($ch);
    echo $retValue;
 }

$retValuexml ファイルが含まれています。

私はまったくphp初めてで、xml からデータテーブルに製品の詳細を表示する方法がわかりません。これに関するアイデアはありますか?

4

1 に答える 1

0

simplexml_load_string()トリックを行う必要があります

$retValue = '<response>
  <products>
      <capacity>1</capacity>
      <id>ae123</id>
      <group>Per</group>
      <name>xxxx</name>
  </products>
  <records>1
  </records>
</response>';


$xml = simplexml_load_string($retValue);
echo $xml->products->capacity . "<br>\n";
echo $xml->products->group . "<br>\n";
echo $xml->products->name . "<br>\n";
echo $xml->records . "<br>\n";

実際に見る

于 2013-02-08T13:52:52.707 に答える