小編給大家分享一下yii框架控制器的作用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、虛擬空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、常山網(wǎng)站維護(hù)、網(wǎng)站推廣。
控制器是 MVC 模式中的一部分, 是繼承yii\base\Controller類的對(duì)象,負(fù)責(zé)處理請(qǐng)求和生成響應(yīng)。
具體來(lái)說(shuō),控制器從應(yīng)用主體 接管控制后會(huì)分析請(qǐng)求數(shù)據(jù)并傳送到模型, 傳送模型結(jié)果到視圖,最后生成輸出響應(yīng)信息。
動(dòng)作
控制器由 操作 組成,它是執(zhí)行終端用戶請(qǐng)求的最基礎(chǔ)的單元, 一個(gè)控制器可有一個(gè)或多個(gè)操作。
如下示例顯示包含兩個(gè)動(dòng)作view and create 的控制器post:
namespace app\controllers; use Yii; use app\models\Post; use yii\web\Controller; use yii\web\NotFoundHttpException; class PostController extends Controller { public function actionView($id) { $model = Post::findOne($id); if ($model === null) { throw new NotFoundHttpException; } return $this->render('view', [ 'model' => $model, ]); } public function actionCreate() { $model = new Post; if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', [ 'model' => $model, ]); } } }
在操作 view (定義為 actionView() 方法)中, 代碼首先根據(jù)請(qǐng)求模型ID加載 模型, 如果加載成功,會(huì)渲染名稱為view的視圖并顯示,否則會(huì)拋出一個(gè)異常。
在操作 create (定義為 actionCreate() 方法)中, 代碼相似. 先將請(qǐng)求數(shù)據(jù)填入模型, 然后保存模型,如果兩者都成功,會(huì)跳轉(zhuǎn)到ID為新創(chuàng)建的模型的view操作, 否則顯示提供用戶輸入的create視圖。
看完了這篇文章,相信你對(duì)“yii框架控制器的作用”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!