Yii 是一个通用的 Web 编程框架,即可以用于开发各种用 PHP 构建的 Web 应用。 因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应用, 如门户网站、社区、内容管理系统(CMS)、 电子商务项目和 RESTful Web 服务等。
Yii 当前有两个主要版本:1.1 和 2.0。 1.1 版是上代的老版本,现在处于维护状态。 2.0 版是一个完全重写的版本,采用了最新的技术和协议,包括依赖包管理器 Composer、PHP 代码规范 PSR、命名空间、Traits(特质)等等。
Yii 2.0 需要 PHP 5.4.0 或以上版本支持。
使用 Yii 需要对面向对象编程(OOP)有基本了解,因为 Yii 是一个纯面向对象的框架。
可以通过两种方式安装 Yii:使用 Composer 或下载一个归档文件,推荐使用composer安装,这样只需执行一条简单的命令就可以安装了。
一、安装Yii框架,通过 Composer 安装
1、如果还没有安装 Composer,则先安装 Composer
(1)在 Linux 和 Mac OS X 中可以运行如下命令:
curl -sS https://getcomposer.org/installer | phpmv composer.phar /usr/local/bin/composer
(2)在 Windows 中,需要去官网下载composer安装程序,下载完成后,运行 Composer-Setup.exe,安装即可。安装完成后,设置好系统的环境变量(如果不知道如何配置composer全局环境变量,百度一下就可以了,网上有很多现成的教程),这样的话,你可以在任何目录下直接使用 composer命令。
2、 如果你已经安装有 Composer 请确保使用的是最新版本, 你可以用 composer self-update命令更新 Composer 为最新版本。
3、安装 Yii
(1)安装basic版本
composer create-project --prefer-dist yiisoft/yii2-app-basic basic
安装完成后,框架目录结构如如下图所示:
(2)安装advanced高级版本
composer create-project --prefer-dist yiisoft/yii2-app-advanced advanced
进入advanced目录,执行init.bat初始化脚本,设置安装的环境,开发环境or生产环境。
安装完成后,框架目录结构如下图所示:
二、配置 Web 服务器
通过上述方法安装的应用程序在 Windows,Max OS X, Linux 中的 Apache HTTP 服务器 或 Nginx HTTP 服务器且PHP版本为5.4或更高都可以直接运行。
(1)Apache 配置
在 Apache 的 httpd.conf文件或在一个虚拟主机配置文件中使用如下配置。 注意,你应该将 path/to/basic/web替换为实际的 basic/web目录。
# 设置文档根目录为 "basic/web"
DocumentRoot"path/to/basic/web"
# 开启 mod_rewrite 用于美化 URL 功能的支持(译注:对应 pretty URL 选项)
RewriteEngineon
# 如果请求的是真实存在的文件或目录,直接访问
RewriteCond%{REQUEST_FILENAME} !-f
RewriteCond%{REQUEST_FILENAME} !-d
# 如果请求的不是真实文件或目录,分发请求至 index.php
RewriteRule . index.php
# if $showScriptName is false in UrlManager, do not allow accessing URLs with script name
RewriteRule ^index.php/ - [L,R=404]
# ...其它设置...
(2)Nginx 配置
server {
listen 80;
server_name mytest.com;
root /path/to/basic/web;
index index.php index.html index.htm;
location / {
index index.php;
autoindex on;
}
if (!-e $request_filename){
rewrite ^/(.*) /index.php last;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
三、访问已安装的Yii框架应用
在确保已搭建好了PHP开发环境,并且Apache或者Nginx、PHP、MySql是开启状态的条件下,访问hostname.com,如果出现如下页面,那么,恭喜你,可以正常使用YII框架,进行你项目的开发了。
四、YII框架的应用请求周期,如下图所示:
1、用户向入口脚本 web/index.php发起请求。
2、入口脚本加载应用配置并创建一个应用 实例去处理请求。
3、应用通过请求组件解析请求的 路由。
4、应用创建一个控制器实例去处理请求。
5、控制器创建一个动作实例并针对操作执行过滤器。
6、如果任何一个过滤器返回失败,则动作取消。
7、如果所有过滤器都通过,动作将被执行。
8、动作会加载一个数据模型,或许是来自数据库。
9、动作会渲染一个视图,把数据模型提供给它。
10、渲染结果返回给响应组件。
11、响应组件发送渲染结果给用户浏览器。
以上就是小编总结的一个YII框架大体的入门流程,仅供参考。