Делаю
$data = ["id" => 10, "text" => 'Hi'];
return $this->asXml($data);
работает.
Меняю "Hi" на "Привет", получаю
This page contains the following errors:
error on line 2 at column 37: Encoding error
Below is a rendering of the page up to the first error.
Страница содержит
<?xml version="1.0" encoding="UTF-8"?>
<response><id>10</id><text>
Если "Hi" возвращает так
<?xml version="1.0" encoding="UTF-8"?>
<response><id>10</id><text>Hi</text></response>
Если меняю на asJson, то "Hi" выдает
{"id":10,"text":"Hi"}
а "Привет" выдает
{"name":"Exception","message":"Syntax
error.","code":4,"type":"yii\\base\\InvalidParamException","file":"путь...\\vendor\\yiisoft\\yii2\\helpers\\BaseJson.php","line":132,"stack-trace":["#0
путь...\\vendor\\yiisoft\\yii2\\helpers\\BaseJson.php(62): yii\\helpers\\BaseJson::handleJsonError(4)","#1 [internal function]: yii\\helpers\\Json::yii\\helpers\\{closure}(2, 'json_encode(): ...', 'путь...', 64, Array)","#2
путь...\\vendor\\yiisoft\\yii2\\helpers\\BaseJson.php(64): json_encode(Array, 320)","#3
путь...\\vendor\\yiisoft\\yii2\\web\\JsonResponseFormatter.php(89): yii\\helpers\\BaseJson::encode(Array, 320 путь...\\vendor\\yiisoft\\yii2\\web\\JsonResponseFormatter.php(73): yii\\web\\JsonResponseFormatter->formatJson(Object(yii\\web\\Response)
путь...\\vendor\\yiisoft\\yii2\\web\\Response.php(1041): yii\\web\\JsonResponseFormatter->format(Object(yii\\web\\Response)
путь...\\vendor\\yiisoft\\yii2\\web\\Response.php(337): yii\\web\\Response->prepare(
путь...\\vendor\\yiisoft\\yii2\\base\\Application.php(392): yii\\web\\Response->send(
путь...\\app\\web\\index.php(17): yii\\base\\Application->run()","#9 {main}"]}