In einer Aktion muss ich mit etwas XML antworten. Ich benutze dafür Response::FORMAT_XML
, was gut funktioniert.Wie kann ich die Antwortformatierung selbst ändern?
// In a controller:
public static function actionFetchData() {
Yii::$app->response->format = Response::FORMAT_XML;
return [
'a' => 'b',
['c', 'd'],
'e' => ['f', 'g']
];
}
Ergebnis in Browser:
<?xml version="1.0" encoding="UTF-8"?>
<response>
<a>b</a>
<item>
<item>c</item>
<item>d</item>
</item>
<e>
<item>f</item>
<item>g</item>
</e>
</response>
Allerdings würde Ich mag die Wurzel-Tags Name von Antwort-Daten ändern. Dies sollte möglich sein, da XmlResponseFormatter, das zum Rendern des XML verwendet wird, die Eigenschaft rootTag hat. Wie kann ich das machen?
Oder allgemein: Wie kann ich die Einstellungen eines Formatierungsprogramms (auch JSON oder was auch immer) ändern?
Kleine Optimierung: 'Response :: FORMAT_XML' könnte anstelle von''xml'' verwendet werden. – robsch
richtig .... hehe .. –