ホームページ > バックエンド開発 > PHPチュートリアル > インターフェイスは返された XML ファイルを取得できます。 有用なコンテンツを抽出するにはどうすればよいですか?

インターフェイスは返された XML ファイルを取得できます。 有用なコンテンツを抽出するにはどうすればよいですか?

WBOY
リリース: 2016-06-23 14:05:45
オリジナル
936 人が閲覧しました

インターフェイスが呼び出された後、$result= は次のコンテンツを取得できます:

stdClass Object
(
[out] => ;flights>

<キャビン><キャビン キャビンコード="Y" キャビンタイプ="0" キャビン割引=" 100" キャビン名="エコノミークラス" キャビンセールス="A" ibePrice="1280" encryptString="79fccacuigjjdskf " />



T
)

以前は xml を直接読み取るためにこれを行っていました, しかし、この方法では stdClass Object( [out] =>

各ノードの内容の読み方がわかりません


ディスカッションへの返信(解決策)

赤いコードはprint_r($result); で取得したものを echo $result; に置き換えるとエラーが発生します キャッチ可能な致命的なエラー: オブジェクト stdClass のオブジェクトを

で文字列に変換できませんでした

オブジェクトの操作に慣れていない場合は、最初に配列に変換すると、より便利になります。

取得するオブジェクトは非常に単純です。$result->out はこの XML 文字列です。コンテンツを抽出したい場合は、文字列抽出を試すか、XML をオブジェクトに解析して配列に変換します (推奨)。 )。 ...

オブジェクトに興味がある場合 操作に慣れていない場合は、最初に配列に変換すると便利です。
取得するオブジェクトは非常に単純です。$result->out はこの XML 文字列です。コンテンツを抽出したい場合は、文字列抽出を試すか、XML をオブジェクトに解析して配列に変換します (推奨)。 )。
PHP コード?1http://www.php.net/manual/zh/ language.oop5.properties.php

XML をオブジェクトに解析して配列に変換する方法を教えてください


DOMDocument メソッドを使用する解析するには

http://www.php.net/manual/zh/language.oop5.properties.php
ログイン後にコピー

次へ
$data['flights']['flight']['cabin']['@attributes']['cabinName'] を使用して、ファーストクラスの割引キャビンを取得できます
;

もちろん、配列操作に変換せずに直接実行することもできますが、これには基本的なスキルをテストする必要があります


PHP code?1234567891011$xml = simplexml_load_string($result->out);// のすべてのプロパティを変換しますオブジェクトを配列関数に変換
次の文エラーを表示します:
simplexml_load_string() [ function.simplexml-load-string]: 入力エラーにより入力変換が失敗しました

あなたの php は 5.3 未満です

認識できるのは utf-8 xml のみです

したがって、エラーが報告されます


何か方法はありますか?

$result->out = str_replace('encoding="GB2312"', 'encoding="utf-8"', iconv('gbk', 'utf-8', $result->out));

echo $data['flights']['flight']['cabin']['@attributes']['cabinName'];

データが表示されません、何が起こっていますか

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート