yii2 basic版基础部分
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 中做如下配置:
- <VirtualHost *:80>
- ServerName www.learnyii.com # 配置的网站名
- DocumentRoot e:/www/basic/web # 主站点的网页存储位置,即为我们需要隐藏的目录
- <Directory "e:/www/basic/web/">
- Options +Indexes +Includes +FollowSymLinks +MultiViews
- AllowOverride All # 允许在.htaccess文件中可以使用所有的指令
- Require local
- # 开启 mod_rewrite 用于美化 url 功能的支持
- RewriteEngine on
- # 如果请求的是真实存在的文件或目录,直接访问
- RewriteCond %{REQUEST_FILENAME} !f
- RewriteCond %{REQUEST_FILENAME} !d
- # 如果请求的不是真实的文件或目录,分发请求至 index.php
- RewriteRule . index.php
- </Directory>
- </VirtualHost>
- options解析:
- 1、indexes:若找不到index.html则返回该目录下的文件列表给用户;
2、Includes:允许使用mod_include模块提供的服务器端包含功能;
3、FollowSymLinks:服务器允许在此目录中使用符号连接;
4、Multiviews:允许使用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)
- defined('YII_DEBUG') or define('YII_DEBUG', true); // 标识应用是否应用在调试模式
- defined('YII_ENV') or define('YII_ENV', 'dev'); // 标识应用运行的环境
- (new yii\web\Application($config))->run(); // 应用主体 : 管理 Yii 应用系统整体结构和生命周期的对象
- // 可以用Yii::$qpp来访问
- // $config 给应用主体这个对象的属性进行初始化赋值
- // $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
- $config = [
- 'id' => 'basic', // 区分其它应用主体的唯一标识 id
- 'basePath' => dirname(__DIR__), // 指定该应用的根目录
- 'language' => 'zh-CN',
- 'defaultRoute' => 'post/index' // 如何加载控制器 ,缺损的路由,当 url 中没有传 r 的时候可以打开的路由
- 'components' => [] // 注册多个在其它地方使用的应用组件
- ]
六、其它
Yii::$app->response->format = Response::FORMAT_JSON; // 返回值会被 response
组件格式化后发送给终端用户
- //可格式化的有以下几个值:
- FORMAT_RAW = 'raw';
- FORMAT_HTML = 'html';
- FORMAT_JSON = 'json';
- FORMAT_JSONP = 'jsonp';
- FORMAT_XML = 'xml';
自定义params参数:
路径:
项目根目录/config/params.php 中配置:
- //导入文件的路径
- 'importPath' => '@test/data/import',
配置完毕后就可以通过 Yii::$app->params['importPath'] 来获取这个值
注:本文为作者(44106-kangaroo) 看完魏羲教你学Yii2.0 视频后所记,如有转载请注明出处:http://www.cnblogs.com/chrdai/p/8004309.html
yii2 basic版基础部分的更多相关文章
- yii2 advanced版基础部分
yii2 advanced版 一.目录结构 1.backend 和 frontend : 前后台入口,相当于是一个单独的Basic应用,有自己的 mvc 目录.配置文件目录.入口文件目录 2.cons ...
- yii2 basic版 MVC 部分
一.model 1.什么是模型 模型是 MVC 模式中的一部分,是表现业务数据.规则和逻辑的对象 可通过继承 yii\base\Model 或它的子类(activeRecord)来定义模型类,基类 y ...
- linux发行版基础目录
linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...
- yii2高级版账号密码问题
yii2高级版默认后台没有密码,生成账号密码步骤: 1. CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` ...
- Ubuntu 安装yii2 advanced版 遇到的坑
1.安装 Composer https://www.yiichina.com/doc/guide/2.0/start-installation通过 Composer 安装 curl -sS https ...
- Virtex6 PCIe 超简版基础概念学习(二)
Virtex6 PCIe 超简版基础概念学习(二) 分类:FPGAPCIe (2081) (0) 举报 收藏 文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 ise14.7 ...
- yii2 beta版 执行流程
yii2 beta版 执行流程 自动加载 1.composer的自动加载 //composer的加载实现了四种方式,可以看看 require(__DIR__ . '/../../vendor/auto ...
- 掌握Thinkphp3.2.0----模版基础
我们将要学习一下 ThinkPHP 模版,ThinkPHP 内置了一个基于 XML 的性能卓越的模版引擎 ThinkTemplate,使用了动态编译和缓存技术,支持自定义标签库, 其实我还体会不到其中 ...
- [linux basic]基础--信号
线程->信号信号,是unix和linux系统响应某些条件而产生的一个事件.接收到该信号的进程会相应地采取一些行动.raise生成表示一个信号的产生catch捕获表示接受到一个信号的产生:信号是由 ...
随机推荐
- Java数据类型Stack栈、Queue队列、数组队列和循环队列的比较
判断括号是否匹配:调用java本身 import java.util.Stack; public class Solution { public boolean isValid(String s){ ...
- python--自己实现的单链表常用功能
最近一个月,就耗在这上面吧. 很有收获的. # coding = utf-8 # 单向链表 class Node: def __init__(self, new_data): self.data = ...
- 在IDEA中编写Spark的WordCount程序
1:spark shell仅在测试和验证我们的程序时使用的较多,在生产环境中,通常会在IDE中编制程序,然后打成jar包,然后提交到集群,最常用的是创建一个Maven项目,利用Maven来管理jar包 ...
- 《深入探索Netty原理及源码分析》文集小结
<深入探索Netty原理及源码分析>文集小结 https://www.jianshu.com/p/239a196152de
- C# 之 HttpRequest 类
Request对象派生自HttpRequest类,使 ASP.NET 能够读取客户端在 Web 请求期间发送的 HTTP 值,从客户端获取信息,浏览器的种类,用户输入表单的数据,Cooki ...
- python全栈开发day59-Django基础
一.今日内容总结 1.HTTP协议: 请求:浏览器发给服务端的消息 格式: 请求方法 URL 协议版本\r\n k1: v1\r\n k2: v2\r\n \r\n 请求体(请求数据) 响应:服务端返 ...
- ubuntu系统更新源
问题引入:在ubuntu上安装libmysqlclient-dev一直提示Connecting to mirrirs.cqu.edu.cn
- 手机端-ajax跨域请求滚屏分页
近期做了一个关于信息展示的详情页面,将里面能够提升用户体验的小点写出来 1.当页面请求新的数据,或上传数据的时候 放一个loading.gif的过渡,告诉用户 你的操作已经完成,正在加载中 2.当所有 ...
- Java 异常处理的重要认识
异常类的继承结构 Exception : 一般标识的是程序中出现的问题,可以直接使用try---catch处理. Error : 一般值得是JVM错误,程序中无法处理. 检测异常类需要在throws后 ...
- Substrings kmp
Problem Description You are given a number of case-sensitive strings of alphabetic characters, find ...