<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] `response`組件就是響應組件了 ## 輸出字符串 控制器除了可以返回數據給框架來讓框架統一輸出以外,還可以設置response組件的數據來實現輸出: ~~~php public function actionTest(){ Yii::$app->response->data = 'Hello world!'; } ~~~ 這樣就會輸出'Hello world!' 其實你還可以執行send方法馬上發送 ~~~php public function actionTest(){ Yii::$app->response->data; if(!Yii::$app->response->isSent){ Yii::$app->response->send(); echo Yii::$app->response->isSent; //true } } ~~~ 默認情況下如果你不send,控制器執行結束后,框架底層會執行send,通常大家都懶得send * * * ## 輸出JSON ~~~php public function actionTest(){ Yii::$app->response->data = pathinfo('/a/b/c.jpg'); Yii::$app->response->format = \yii\web\Response::FORMAT_JSON; } ~~~ 兩個要點: 1. data設置為可以被json\_encode的數字(一個字符串也能json\_encode) 2. format設置為**yii\\web\\Response::FORMAT\_JSON**這個常量值 format的默認值是**yii\\web\\Response::FORMAT\_HTML** * * * ## 下載文件 ~~~php Yii::$app->response->sendFile('/a/b/c.jpg', '測試圖片.jpg'); ~~~ 于是瀏覽器就會彈出下載框,提示下載一個叫“測試圖片.jpg”的文件 * * * ## 操作header ~~~php Yii::$app->response->headers->add('Content-type', 'text/plain'); Yii::$app->response->headers->add('myHeader', 'myValue'); Yii::$app->response->headers->remove('myHeader'); Yii::$app->response->data = print_r([7, 9, 3]); ~~~ ## 響應狀態碼 這回換個花樣,通過configure設置吧 ~~~php Yii::configure(Yii::$app->response, [ 'statusText' => '出錯啦', 'statusCode' => 501, //別占用500,這樣就知道500是apache|nginx或框架底層這些出錯的,501是咱自己定義的錯誤 ]); ~~~ * 顯示404報錯 ~~~php throw new \yii\web\NotFoundHttpException(); ~~~ 底層會將這個異常轉換成404報錯 * * * * 拋出以下異常有其它對應的狀態碼和提示 * yii\\web\\BadRequestHttpException: status code 400 * yii\\web\\ConflictHttpException: status code 409 * yii\\web\\ForbiddenHttpException: status code 403 * yii\\web\\GoneHttpException: status code 410 * yii\\web\\MethodNotAllowedHttpException: status code 405 * yii\\web\\NotAcceptableHttpException: status code 406 * yii\\web\\NotFoundHttpException: status code 404 * yii\\web\\ServerErrorHttpException: status code 500 * yii\\web\\TooManyRequestsHttpException: status code 429 * yii\\web\\UnauthorizedHttpException: status code 401 * yii\\web\\UnsupportedMediaTypeHttpException: status code 415 * * * * 拋出自定義狀態碼異常,比如定義個999的狀態碼 ~~~php throw new \yii\web\HttpException(999); ~~~ * * * ## 重定向 ~~~php public function actionTest(){ return $this->redirect('http://www.kkh86.com'); return $this->redirect('http://www.kkh86.com', 301); return $this->redirect('http://www.kkh86.com', 302); return $this->redirect('/b.php'); //用response組件也可以 return Yii::$app->response->redirect('http://www.kkh86.com'); return Yii::$app->response->redirect('http://www.kkh86.com', 301); return Yii::$app->response->redirect('http://www.kkh86.com', 302); return Yii::$app->response->redirect('/b.php'); } ~~~ 在控制器里的話直接調控制器代碼最短,不過最后還是調了response來redirect,感覺這個快捷方法營養不多,我還是偏向直接用response組件的 而不在控制器里,比如模型或擴展類什么的地方重定向就要靠response組件了
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看