yii2 出力 XML 形式データ

WBOY
リリース: 2016-07-29 08:51:29
オリジナル
1122 人が閲覧しました

著者: Bailang 出典: http://www.manks.top/yii2_xml_response.html.html この記事の著作権は著者に帰属します。転載は歓迎されますが、この記述は著者の同意なしに保持されなければなりません。記事ページの接続の目立つ位置に表示する必要があります。そうでない場合、当社は法的責任を追及する権利を留保します。 PHPの

Xml処理は実際の開発ではあまり使われませんが、使う場合には必然的に使われることになりますが、まとめるとやはり少し面倒です。

yii2 で XML がどのように処理されるかを見てみましょう。思ったよりも簡単です。

xml形式でデータを出力する場合を例に挙げます。

出力されるため、Web リクエストとレスポンスが含まれる必要があります。慣れていない場合は、まず HTTP プロトコルを理解してください。

yii2 は次の戻り形式をサポートしており、すべてカスタマイズできます。

  • HTML: yiiwebHtmlResponseFormatter.によって実装されます

  • XML: yiiwebXmlResponseFormatter.によって実装されます

  • JSON: yiiwebJsonResponseFormatter.によって実装されます

  • JSONP: yiiwebによって実装されますJsonResponseFormatter.

  • RAW: この形式を使用する場合書式設定を適用せずに応答を直接送信したい場合。

ここでは XML について説明します。

まず、XML 形式のデータの単純な出力を見てみましょう

<span>public</span><span>function</span><span> actionTest () { 
    \Yii</span>::<span>$app</span>->response->format = \yii\web\Response::<span>FORMAT_XML; 
    </span><span>return</span><span> [ 
        </span>'message' => 'hello world', 
        'code' => 100,<span>
    ]; 
}</span>
ログイン後にコピー

ここでは、応答形式 FORMAT_XML を指定し、このテスト メソッドにアクセスして、XML 形式のデータがページに出力されることを確認します

<span><</span><span>response</span><span>></span><span><</span><span>message</span><span>></span>hello world<span></</span><span>message</span><span>></span><span><</span><span>code</span><span>></span>100<span></</span><span>code</span><span>></span><span></</span><span>response</span><span>></span>
ログイン後にコピー

上記上記の方法は少し面倒です。複数の項目を設定する場合はあまり便利ではありませんので、自分で応答オブジェクトを作成してみましょう

 
ログイン後にコピー

<span>public</span><span>function</span><span> actionTest () { 
    </span><span>return</span> \Yii::<span>createObject([ 
        </span>'class' => 'yii\web\Response', 
        'format' => \yii\web\Response::FORMAT_XML, 
        'formatters' =><span> [ 
            \yii\web\Response</span>::FORMAT_XML =><span> [ 
                </span>'class' => 'yii\web\XmlResponseFormatter', 
                'rootTag' => 'urlset', <span>//</span><span>根节点 </span>                'itemTag' => 'url', <span>//</span><span>单元 </span>            ],<span>
        ]</span>, 
        'data' => [ <span>//</span><span>要输出的数据 </span><span>            [ 
                </span>'loc' => 'http://********',<span>
            ]</span>,<span>
        ]</span>,<span>
    ]); 
}</span>
ログイン後にコピー

以下の説明を容易にするために、上記の設定も行われていることがわかります。応答形式を設定し、ルート ノードの rootTag、ユニットの itemTag、データ型の設定など、いくつかの個別の設定を行いました。一部の学生は、ここでは実際にサイト マップ出力を XML 形式で非常に簡単に実装していることに気づきました。はい、とても簡単です。

以上、yii2が出力したxml形式のデータを内容も含めて紹介しましたので、PHPチュートリアルに興味のある方の参考になれば幸いです。

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