php yii2框架教程,Yii2框架使用快速入门
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框架大体的入门流程,仅供参考。
php yii2框架教程,Yii2框架使用快速入门相关推荐
- STL教程:C++ STL快速入门
目录 1.STL引言 2.STL是什么(STL简介) 3.STL历史 4.STL组件 5.STL基本结构 6.STL 使用方法 7.STL目录 网址:STL教程:C++ STL快速入门(非常详细) 第 ...
- PR软件入门教程 Adobe Premiere Pro 快速入门指南
原文(包含图片)链接:https://www.prjianji.com/1.html 了解如何开始使用面向电影制作人.电视节目制作人.新闻记者.学生和视频制作人员的非线性编辑软件 Premiere P ...
- Koa框架教程,Koa框架开发指南,Koa框架中文使用手册,Koa框架中文文档
我的博客:CODE大全:www.codedq.net:业余草:www.xttblog.com:爱分享:www.ndislwf.com或ifxvn.com. Koa -- 基于 Node.js 平台的下 ...
- 联邦学习框架 FederatedScope(1)快速入门
新鲜出炉的框架--两个月,暂时没什么教程,全程跟着官方文档走. 框架与文档可能存在一点小问题,以后肯定会改进,一切以当下事实为准. 文章目录 简介 快速入门 下载安装 文档的坑 安装依赖时 独立模式运 ...
- python_爬虫 16 Scrapy框架之(二)快速入门
目录 一.安装和文档: 二.快速入门: 1.创建项目: 2.目录结构介绍: 3.使用Scrapy框架爬取糗事百科段子: 使用命令创建一个爬虫: 爬虫代码解析: 修改settings.py代码: 简单运 ...
- 【重温SSM框架系列】1 - Spring快速入门(配置文件及API详解)
Spring快速入门 Spring是什么 Spring发展历史 Spring的优势 Spring的开发步骤 没有Spring的时候的开发步骤 使用Spring的开发步骤 Spring配置文件(appl ...
- netbeans linux 教程,NetBeans IDE Ruby 快速入门教程
NetBeans IDE Ruby 快速入门教程 本教程提供了在 NetBeans IDE 中开发 Ruby 应用程序的快速入门指南.本教程介绍如何使用 IDE 的 Ruby 支持来执行一些典型的应用 ...
- Python教程:网络爬虫快速入门实战解析
建议: 请在电脑的陪同下,阅读本文.本文以实战为主,阅读过程如稍有不适,还望多加练习. 网络爬虫简介 网络爬虫,也叫网络蜘蛛(Web Spider).它根据网页地址(URL)爬取网页内容,而网页地址( ...
- python快速入门教程-终于理解python快速入门教程
跟Java语言一样,python语言也有类的概念,直接使用class关键字定义python类.在python类,定义类的方法.然后直接使用类的初始化调用自身,获取相应的属性.以下是小编为你整理的pyt ...
- Docker容器化技术教程,24小时快速入门
Docker介绍 Docker简介和安装 Docker是什么 为什么使用Docker 和普通虚拟机的对比 打包.分发.部署 小结 Docker部署的优势 Docker通常用来做什么 重要概念:镜像.容 ...
最新文章
- 华硕路由 ac ax_WiFi 6 路由好在哪里,看看华硕AX路由推荐清单吧
- 如果年轻,就出发吧!
- 前端学习(1494):表格案例--axios-搜索功能
- 结对项目 刘静 201303014059 计科高职13-2
- Delphi Format函数功能及用法详解
- Linux 6安装kde桌面,CentOS 5/6 安装 GNOME 或 KDE 桌面
- JSP的9个内置对象-application
- rfcv函数实现_OpenSSL AES_ctr128_encrypt()作为伪随机函数在RFC3711(SRTP)
- [C++]指针与引用(应用辨析)
- win10下安装deepin双系统教程
- 线下综合体-中岛店的一些思考
- android 虚拟按键遮挡布局,完美解决虚拟按键遮盖底部视图的问题
- c语言不用死等的延时函数,matlab延时函数怎么写
- 高铁站台怎么找车厢?
- C++学习——如何在C++中把map存入一个txtx文件
- css3+html5——机器猫哆啦A梦+手、脚、头动起来!
- python基础“猜单词游戏”代码
- 英国主要跨境电商平台简单介绍
- 【免费】小米即时消息云MIMC介绍——免费、简单实现IM
- 论文中引用github项目