YII2 学习笔记

目录结构

1570195292107

注意,MVC的三个文件夹

  • Models

  • Views

  • Controllers

一次完整的请求

1570195383776

r是路由的意思,如下图

   m

使用get/post

      $request = \Yii::$app->request;
      $id = $request->get('id');
      $username = $request ->post('username');
      dd($username);
      //dd($id);

基本原理

应用静态结构

  • 请求生命周期

  • 以下图表展示了一个应用如何处理请求:

请求生命周期

    1. 用户向入口脚本 web/index.php 发起请求。
    2. 入口脚本加载应用配置并创建一个应用 实例去处理请求。
    3. 应用通过请求组件解析请求的 路由
    4. 应用创建一个控制器实例去处理请求。
    5. 控制器创建一个动作实例并针对操作执行过滤器。
    6. 如果任何一个过滤器返回失败,则动作取消。
    7. 如果所有过滤器都通过,动作将被执行。
    8. 动作会加载一个数据模型,或许是来自数据库。
    9. 动作会渲染一个视图,把数据模型提供给它。
    10. 渲染结果返回给响应组件。
    11. 响应组件发送渲染结果给用户浏览器。
  • composer global require “fxp/composer-asset-plugin:~1.4.6”

  • 同时下载 除php外的其它相关组件

试运行

  • 创建了say操作,在siteController,对应的views/site/say.php

  • 创建完动作和视图后,你就可以通过下面的 URL 访问新页面了:

  • http😕/hostname/index.php?r=site/say&message=Hello+World

  • 实际上 say 视图就是一个由 render() 执行的 PHP 脚本。 视图脚本输出的内容将会作为响应结果返回给应用。应用将依次输出结果给最终用户。

  • MVC:

  • 模型代表数据、业务逻辑和规则; 视图展示模型的输出;控制器 接受出入并将其转换为模型和视图命令。

    <?php 
    
    defined('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'; 
    
    // 加载应用配置 application  config
    
    $config = require DIR . '/../config/web.php'; 
    
    // 创建、配置、运行一个应用 
    
    (new yii\web\Application($config))->run();
    
    
  • Application(应用主体)在 入口脚本 中创建并能通过表达式 \Yii::$app 全局范围内访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值