Yii2.0 basic 版

yii 官方网站:http://www.yiiframework.com/

一、安装:

1、下载地址http://www.yiichina.com/download

从归档文件安装:Yii2的基本应用程序模板

2、参数修改:basic/config/web.php 将 cookieValidationKey 任意填写一个值

3、访问主页:http://localhost/basic/web/index.php

二、目录结构

1、controllers/  :   控制器类

2、models/     :   模型类

3、views/             :   视图文件

4、commands     :   控制台命令

5、tests /             :   测试相关的文件

6、assets/            :   资源文件

7、config/           :   应用配置及其它配置

8、web/               :   web应用根目录,包含web入口文件

  • assets/              :   资源文件(js 和 css)
  • index.php         :   应用入口文件

9、runtime/        :   运行时产生的文件,例如日志和缓存文件

10、vendor/       :   Yii自身及第三方拓展

11、根目录下的yii文件 : Yii 控制台命令执行脚本

三、配置 web 服务器,隐藏 basic/web

1、先在 apache 的 httpd.conf 中将虚拟路径的注释去掉

Include conf/extra/httpd-vhosts.conf

2、在httpd-vhosts.conf 中做如下配置:

  1. <VirtualHost *:80>
  2.   ServerName www.learnyii.com   # 配置的网站名 
  3.   DocumentRoot e:/www/basic/web  # 主站点的网页存储位置,即为我们需要隐藏的目录
  4.   <Directory "e:/www/basic/web/">
  5.     Options +Indexes +Includes +FollowSymLinks +MultiViews
  6.     AllowOverride All # 允许在.htaccess文件中可以使用所有的指令
  7.     Require local
  8.     # 开启 mod_rewrite 用于美化 url 功能的支持
  9.     RewriteEngine on
  10.     # 如果请求的是真实存在的文件或目录,直接访问
  11.     RewriteCond %{REQUEST_FILENAME} !f
  12.     RewriteCond %{REQUEST_FILENAME} !d
  13.     # 如果请求的不是真实的文件或目录,分发请求至 index.php
  14.     RewriteRule . index.php
  15.   </Directory>
  16. </VirtualHost>
  17.  
  18. options解析:
  1. 1indexes:若找不到index.html则返回该目录下的文件列表给用户;
    2Includes:允许使用mod_include模块提供的服务器端包含功能;
    3FollowSymLinks:服务器允许在此目录中使用符号连接;
    4Multiviews:允许使用mod_negotiation模块提供内容协商的"多重视图"

3、在 hosts 文件(C:\Windows\System32\drivers\etc\hosts)中配置如下:
     127.0.0.1     www.learnyii.com

4、关于 apache options 的详解,可以参考:http://www.365mini.com/page/apache-options-directive.htm

四、入口文件(web/index.php)

  1. defined('YII_DEBUG') or define('YII_DEBUG', true); // 标识应用是否应用在调试模式
  2. defined('YII_ENV') or define('YII_ENV', 'dev'); // 标识应用运行的环境
  3. (new yii\web\Application($config))->run(); // 应用主体 : 管理 Yii 应用系统整体结构和生命周期的对象
  4. // 可以用Yii::$qpp来访问
  5. // $config 给应用主体这个对象的属性进行初始化赋值
  6. // $config 是从web.php中加载进来的

4.1、使用实例:
a、Yii::$app->language
b、Yii::$app->charset

4.2、配置应用主体
位置:在 config/web.php 中进行配置
eg. language 默认为 en-US,配置为 language => 'zh-CN',

五、config

  1. $config = [
  2.   'id' => 'basic',          // 区分其它应用主体的唯一标识 id
  3.   'basePath' => dirname(__DIR__), // 指定该应用的根目录
  4.   'language' => 'zh-CN',
  5.   'defaultRoute' => 'post/index' // 如何加载控制器 ,缺损的路由,当 url 中没有传 r 的时候可以打开的路由
  6.   'components' => []        // 注册多个在其它地方使用的应用组件
  7. ]

 六、其它

Yii::$app->response->format = Response::FORMAT_JSON;    // 返回值会被 response 组件格式化后发送给终端用户

  1. //可格式化的有以下几个值:
  2. FORMAT_RAW = 'raw';
  3. FORMAT_HTML = 'html';
  4. FORMAT_JSON = 'json';
  5. FORMAT_JSONP = 'jsonp';
  6. FORMAT_XML = 'xml';

自定义params参数:

路径:

项目根目录/config/params.php 中配置:

  1. //导入文件的路径
  2. 'importPath' => '@test/data/import',

配置完毕后就可以通过 Yii::$app->params['importPath']  来获取这个值

注:本文为作者(44106-kangaroo) 看完魏羲教你学Yii2.0 视频后所记,如有转载请注明出处:http://www.cnblogs.com/chrdai/p/8004309.html

yii2 basic版基础部分的更多相关文章

  1. yii2 advanced版基础部分

    yii2 advanced版 一.目录结构 1.backend 和 frontend : 前后台入口,相当于是一个单独的Basic应用,有自己的 mvc 目录.配置文件目录.入口文件目录 2.cons ...

  2. yii2 basic版 MVC 部分

    一.model 1.什么是模型 模型是 MVC 模式中的一部分,是表现业务数据.规则和逻辑的对象 可通过继承 yii\base\Model 或它的子类(activeRecord)来定义模型类,基类 y ...

  3. linux发行版基础目录

    linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...

  4. yii2高级版账号密码问题

    yii2高级版默认后台没有密码,生成账号密码步骤: 1. CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` ...

  5. Ubuntu 安装yii2 advanced版 遇到的坑

    1.安装 Composer https://www.yiichina.com/doc/guide/2.0/start-installation通过 Composer 安装 curl -sS https ...

  6. Virtex6 PCIe 超简版基础概念学习(二)

    Virtex6 PCIe 超简版基础概念学习(二) 分类:FPGAPCIe (2081)  (0)  举报  收藏 文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 ise14.7 ...

  7. yii2 beta版 执行流程

    yii2 beta版 执行流程 自动加载 1.composer的自动加载 //composer的加载实现了四种方式,可以看看 require(__DIR__ . '/../../vendor/auto ...

  8. 掌握Thinkphp3.2.0----模版基础

    我们将要学习一下 ThinkPHP 模版,ThinkPHP 内置了一个基于 XML 的性能卓越的模版引擎 ThinkTemplate,使用了动态编译和缓存技术,支持自定义标签库, 其实我还体会不到其中 ...

  9. [linux basic]基础--信号

    线程->信号信号,是unix和linux系统响应某些条件而产生的一个事件.接收到该信号的进程会相应地采取一些行动.raise生成表示一个信号的产生catch捕获表示接受到一个信号的产生:信号是由 ...

随机推荐

  1. Java数据类型Stack栈、Queue队列、数组队列和循环队列的比较

    判断括号是否匹配:调用java本身 import java.util.Stack; public class Solution { public boolean isValid(String s){ ...

  2. python--自己实现的单链表常用功能

    最近一个月,就耗在这上面吧. 很有收获的. # coding = utf-8 # 单向链表 class Node: def __init__(self, new_data): self.data = ...

  3. 在IDEA中编写Spark的WordCount程序

    1:spark shell仅在测试和验证我们的程序时使用的较多,在生产环境中,通常会在IDE中编制程序,然后打成jar包,然后提交到集群,最常用的是创建一个Maven项目,利用Maven来管理jar包 ...

  4. 《深入探索Netty原理及源码分析》文集小结

    <深入探索Netty原理及源码分析>文集小结 https://www.jianshu.com/p/239a196152de

  5. C# 之 HttpRequest 类

          Request对象派生自HttpRequest类,使 ASP.NET 能够读取客户端在 Web 请求期间发送的 HTTP 值,从客户端获取信息,浏览器的种类,用户输入表单的数据,Cooki ...

  6. python全栈开发day59-Django基础

    一.今日内容总结 1.HTTP协议: 请求:浏览器发给服务端的消息 格式: 请求方法 URL 协议版本\r\n k1: v1\r\n k2: v2\r\n \r\n 请求体(请求数据) 响应:服务端返 ...

  7. ubuntu系统更新源

    问题引入:在ubuntu上安装libmysqlclient-dev一直提示Connecting to mirrirs.cqu.edu.cn

  8. 手机端-ajax跨域请求滚屏分页

    近期做了一个关于信息展示的详情页面,将里面能够提升用户体验的小点写出来 1.当页面请求新的数据,或上传数据的时候 放一个loading.gif的过渡,告诉用户 你的操作已经完成,正在加载中 2.当所有 ...

  9. Java 异常处理的重要认识

    异常类的继承结构 Exception : 一般标识的是程序中出现的问题,可以直接使用try---catch处理. Error : 一般值得是JVM错误,程序中无法处理. 检测异常类需要在throws后 ...

  10. Substrings kmp

    Problem Description You are given a number of case-sensitive strings of alphabetic characters, find ...