Better handling of sending response content.

This commit is contained in:
Qiang Xue
2013-06-17 15:49:53 -04:00
parent 3e18479d1f
commit 4782b19739

View File

@@ -319,7 +319,13 @@ class Response extends \yii\base\Response
*/
protected function sendContent()
{
echo $this->content;
if (is_array($this->content)) {
echo 'array()';
} elseif (is_object($this->content)) {
echo method_exists($this->content, '__toString') ? (string)$this->content : get_class($this->content);
} else {
echo $this->content;
}
}
/**
@@ -723,13 +729,13 @@ class Response extends \yii\base\Response
}
switch ($this->format) {
case self::FORMAT_RAW:
$this->content = $this->data;
break;
case self::FORMAT_HTML:
$this->getHeaders()->setDefault('Content-Type', 'text/html; charset=' . $this->charset);
$this->content = $this->data;
break;
case self::FORMAT_RAW:
$this->content = $this->data;
break;
case self::FORMAT_JSON:
$this->getHeaders()->set('Content-Type', 'application/json');
$this->content = Json::encode($this->data);