yii之mvc
一:MVC
二:YII路由信息
http://192.168.85.129/index.php?r=user%2Findex
这是一个YII打开页面的路由地址信息。 index.php为入口地址(也被称为入口脚本)在/web/index.php 入口脚本主要完成以下操作:
定义全局常量; 注册 Composer 自动加载器; 包含 [[Yii]] 类文件; 加载应用配置; 创建一个应用实例并配置; 调用 [[yii\base\Application::run()]] 来处理请求。
<?phpdefined(‘YII_DEBUG‘) or define(‘YII_DEBUG‘, true); defined(‘YII_ENV‘) or define(‘YII_ENV‘, ‘dev‘);// 注册 Composer 自动加载器 require(__DIR__ . ‘/../vendor/autoload.php‘);// 包含 Yii 类文件 require(__DIR__ . ‘/../vendor/yiisoft/yii2/Yii.php‘);// 加载应用配置 $config = require(__DIR__ . ‘/../config/web.php‘);// 创建、配置、运行一个应用 (new yii\web\Application($config))->run();
?r: 为路由的意思,也就是从这个入口进入后要路由到哪个页面去。
user%2Findex: %2F相当于对/进行了转义,本意是user/index.所以这个路径也可以写成:
http://192.168.85.129/index.php?r=user/index
user为controller ID
index为action ID
三:Controller
控制器是 MVC 模式中的一部分, 是继承[[yii\base\Controller]]类的对象,负责处理请求和生成响应。 具体来说,控制器从应用主体接管控制后会分析请求数据并传送到模型, 传送模型结果到视图,最后生成输出响应信息。
控制器有操作组成,一个控制器可以有众多操作组成
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, ]); } }}
ControllerID命名规则
例如usernamecontroller:为一个控制ID,它在命名是username
UserNameController:它的命名是User-Name
在function后定义的操作就是操作ID名字是去了action后的内容。
actionID命名规则如上。
本文出自 “slayer” 博客,请务必保留此出处http://slayer.blog.51cto.com/4845839/1620427
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。