微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 以任何方式传递CHttpException的HTML消息字符串?

我用CHttpException(404,$message)处理404s,$message变量是一个HTML字符串来实现一些样式.但是CHttpException()对我的$message进行编码,将HTML呈现为无用的转义字符串.有什么方法可以绕过CHttpException的字符串编码,以便输出HTML吗?

/**
* From PostsController.PHP
*/

// ...

public function actionCategory($id)
{

   $categoryModel = Categories::model()->findByAttributes(array('idCategory'=>$id));

    if($categoryModel===null){

        $message = "<div class=\"alert alert-danger\">Page Not Found</div>";
        throw new CHttpException(404, $message);
            return;
        }

    // ...

解决方法:

CHttpException不编码任何东西.认情况下,消息在错误视图中编码,该视图位于protected / views / site / error.PHP中 – 我认为您只需要在该视图中更改它(如果您确实更改了该视图,则需要更改自定义错误视图).只有你应该知道yii抛出的标准错误没有为HTML准备好,所以你应该找到一些方法来区分你的代码抛出的CHttpException和Yii引发的错误.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐