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命名规则如上。

时间: 2024-12-26 08:09:51

yii之mvc的相关文章

Yii框架学习入门(1)--YII的MVC概念及逻辑解析

1.这里是win10安装的是Yii2.0,中文社区:http://www.yiichina.com/ .2.先了解安装方法:服务器用的是wamp,将Yii2.0高级版解压文件放入www目录,将php加入全局命令(右击[计算机]-[属性]-[高级系统设置]然后在系统属性里选择[高级]-环境变量 -- 编辑系统变量 -- 双击path -- 加入php环境地址 设置),运行cmd到www根目录下: (1)> php init 选 0 --> 选 yes (2)找到 common/config目录下

Yii学习——基础(1)

Yii采用MVC设计模式. Yii还引入了一个称作front-controller的东西,并命名为application. application封装了对用户请求的处理. application会收集用户的请求信息,并交予对应的控制器进一步处理. 这是一张交互流程图. 典型的Yii应用的工作流程 见图. index.php作为bootstrap脚本,创建了application并run它. 通过组件request,application获得用户请求的详细信息. 通过组件urlManager,ap

第一章:认识Yii

第一章:认识Yii 认识Yii 在过去几年中,框架迅速发展,几乎在Web应用开发中,每个人都会涉及到一个新生框架,Web开发框架会帮助你加快你的应用程序发布,你只需迅速的把你的想法在框架的白板上书写功能代码.随着Web应用的实现具有共同特征,现有的框架方案已经满足这些要求,在今天还有什么理由要从头开始你的下一个Web应用呢?今天的Web开发,除程序自身语言外,一个现代化.灵活的和可扩展的框架,几乎是一个至关重要的编程工具,此外,如果语言与框架两个部份有特别的互补性,结果是将一个非常强大的工具包:

PHP框架Yii编码规范

文件方法命名 文件名即类名 类名称: 驼峰式 首字母大字 class PointController class PointRatioController 公共成员方法: 驼峰式 首字母小写 public function getPointById() 私有成员方法: 驼峰式 首字母小写 private function _getPointById() 公共成员变量: public $users public $userName 私有成员变量: private $_user private $_

YII编码规范

类名称: 驼峰式 首字母大字 class PointController class PointRatioController 公共成员方法: 驼峰式 首字母小写 public function getPointById() 私有成员方法: 驼峰式 首字母小写 private function _getPointById() 公共成员变量: public $users public $userName 私有成员变量: private $_user private $_userName 常量: 所

Yii安装使用教程(转)

Yii 是一个基于组件的高性能 PHP 框架,用于快速开发大型 Web 应用.它使Web开发中的 可复用度最大化,可以显著提高你的Web应用开发速度.Yii 这个名字(读作易(Yee) 或 [ji:])代表 简单(easy), 高效(efficient) 和 可扩展(extensible). 中文帮助:http://www.yiiframework.com/doc/guide/1.1/zh_cn/quickstart.what-is-yii 一.下载yiiframework,当前最新版本是1.1

详解PHP的3种框架

PHP的三种框架都很适合用来创建Web2.0应用程序,但每种框架的使用目的有所不同.我们看看它们具有哪些功能,以及它们之间的较量,希望这对大家的PHP框架学习有所帮助. 模板引擎 模板引擎减少开发人员的工作量,它为写前端代码提供更好的功能.模板引擎提供了诸如自动HTML转义和过滤功能,并填写由原生PHP留下的空白. Symfony Twig 模板系统 Twig是PHP的现代模板系统.Symfony利用其优势,使开发人员能够编写干净.简洁的代码,而且它比原生PHP可以做得更多.例如,原生PHP写的

我 &amp;&amp; yii2 (一)

这俩天学习了yii2 ,写点心得,嘻嘻 第一部分呢,就写下关于yii2 的mvc的一些东东吧 Yii 的mvc 结构 1. 控制器 控制器中的方法以 action 开头 如果遇上像 actionCreateItem 这样的方法,访问时候,url 得这么写 localhost/index.php?r=控制器名/create-item , 用- 代替大小写 public function actionIndex() {} Controller 中的 $request 1 // 获取 request

MeepoPS——轻量级 Socket 服务

MeepoPS是Meepo PHP Socket的缩写.旨在提供高效稳定的由纯PHP开发的多进程SocketService. MeepoPS可以轻松构建在线实时聊天,即时游戏,视频流媒体播放,RPC,实时监控,以及原本使用HTTP的接口/定时任务的场景中等. 综述: 开发语言:PHP5.3以上 PHP作为最好的语言,不仅仅能依靠Nginx来开发Web应用,同时,也可以构建高效稳定的即时通讯类Socket应用 MeepoPS的最低运行要求是安装了PHP的PCNTL库 MeepoPS的定位是一个插件