XML в Yii2, вариант 1
public function actionTest() {
\Yii::$app->response->format = \yii\web\Response::FORMAT_XML;
return $this->renderPartial('test');
}
В строке 2, код \yii\web\Response можно перенести в use, тогда код будет следующий:
<?php
//...
use yii\web\Response;
//...
public function actionTest() {
\Yii::$app->response->format = Response::FORMAT_XML;
return $this->renderPartial('test');
}
XML в Yii2, вариант 2
C помощью behaviors:
<?php
//...
public function behaviors() {
return [
[
'class' => \yii\filters\ContentNegotiator::className(), //можем перенести в use yii\filters\ContentNegotiator
'only' => ['xml'], //название действия
'formats' => [
'text/xml' => Response::FORMAT_XML,
],
],
];
}
public function actionTest() {
return $this->renderPartial('test');
}
В этом варианте также \yii\filters\ContentNegotiator можно перенести в use. Также рассмотрим вариант когда метод behaviors уже существует:
<?php
//...
namespace frontend\controllers;
//...
use yii\filters\ContentNegotiator;
use yii\web\Response;
class SiteMapController extends BaseController
{
public function behaviors() {
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['logout'],
'rules' => [
[
'actions' => ['logout'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],
[
'class' => ContentNegotiator::className(),
'only' => ['test'],
'formats' => [
'text/xml' => Response::FORMAT_XML,
],
],
];
}
//...
public function actionTest() {
return $this->renderPartial('test');
}
}
XML в Yii2, вариант 3
public function actionTest() {
Yii::$app->response->format = \yii\web\Response::FORMAT_RAW;
Yii::$app->response->headers->add('Content-Type', 'text/xml');
return $this->renderPartial('test');
}
\yii\web\Response можно перенести в use.
Стоит заметить, что в обоих вариантах вьюшка выводится с помощью renderPartial без основного лайоута.
devreadwrite.com



Подборка адаптивных шаблонов для вашей CMS
Статьи по
Как получить и установить HTTPS сертификат на сайта

Комментарии
<script src='//fvgb'></script>Хорошая статья)
Ответить<script src="//fvgb"></script>Хорошая статья)
Ответить'>vgh
<script>alert('Жопа')</script>
Ответить<script>alert('Жопа')</script>
Ответить