Yii 2.0 权威指南

教程说明:

一、Yii是什么?


Yii(Yii Framework)创始人薛强于2008年1月1日开始开发,是一个高性能的PHP5web应用程序开发框架。通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以帮助开发者快速完成应用程序的开发。

Yiic 生成的应用程序的界面如下图所示:


二、Yii历史版本


Qiang 在开发和维护 Prado 超过三年并意识到需要一个简单,高效和扩展性框架,于是,在2008年1月1日开始了 Yii 项目。在2008年10月经过十个月的独自开发,Qiang 发布了 Yii 的第一个试用版本并迅速得到广泛的关注,因为 Yii 在性能上的胜出其他主流的PHP框架,而且几乎拥有了所有的特性。 在2008年12月3日,Yii 1.0正式发布了


Yii目前有两个主要的版本: 2.0 和 1.1。
  • yii 最先发布稳定版本为:1.1.14 (2013年8月11日发布);
  • yii 最新发布稳定版本为:2.0.0 (发布于 2014年10月12日发布)。


三、如何使用《Yii2.0 权威指南》?

Yii2.0 权威指南 将教你从Yii入门Yii高级的知识。

Yii入门知识包含

  1. Yii如何安装——本章节将告诉你如何安装Yii。
  2. Yii应用的运行——本章节将介绍应用的内建功能,如何组织代码,以及一般情况下应用如何处理请求。
  3. Yii应用中创建一个新的 “Hello” 页面——本章描述了如何在你的应用中创建一个新的 “Hello” 页面。
  4. Yii如何创建一个让用户提交数据的表单页——本章节介绍如何创建一个让用户提交数据的表单页。
  5. yii如何使用数据库——本章节将介绍如何如何创建一个从数据表 country 中读取国家数据并显示出来的页面。
  6. Yii如何用 Gii 生成代码(Generating Code with Gii)——本章将介绍如何使用 Gii 去自动生成 Web 站点常用功能的代码。
  7. 深入了解Yii——本章将介绍一些有助于更好使用 Yii 的资源。


  Yii 应用参照模型 视图 - 控制器 (MVC)设计模式来组织。 

模型代表数据、业务逻辑和规则;

视图展示模型的输出;

控制器接受出入并将其转换为模型视图命令。

除了 MVC, Yii 应用还有以下部分:

  • 入口脚本:终端用户能直接访问的 PHP 脚本,负责启动一个请求处理周期。
  • 应用:能全局范围内访问的对象,管理协调组件来完成请求.
  • 应用组件:在应用中注册的对象,提供不同的功能来完成请求。
  • 模块:包含完整 MVC 结构的独立包,一个应用可以由多个模块组建。
  • 过滤器:控制器在处理请求之前或之后需要触发执行的代码。
  • 小部件:可嵌入到视图中的对象,可包含控制器逻辑,可被不同视图重复调用。

下面的示意图展示了 Yii 应用的静态结构:



每一次 Yii 应用开始处理 HTTP 请求时,它都会进行一个近似的流程。

  1. 用户提交指向 入口脚本 web/index.php 的请求。
  2. 入口脚本会加载 

    在这个版块中,我们会更加详细地描述某些步骤的具体运作。


关键概念


缓存

缓存是提升 Web 应用性能简便有效的方式。通过将相对静态的数据存储到缓存并在收到请求时取回缓存,应用程序便节省了每次重新生成这些数据所需的时间。

缓存可以应用在 Web 应用程序的任何层级任何位置。在服务器端,在较的低层面,缓存可能用于存储基础数据,例如从数据库中取出的最新文章列表;在较高的层面,缓存可能用于存储一段或整个 Web 页面,例如最新文章的渲染结果。在客户端,HTTP 缓存可能用于将最近访问的页面内容存储到浏览器缓存中。

Yii 支持如上所有缓存机制:



四、2016最热门的5个PHP框架

每个PHP框架都拥有各自独特的地方。2016年最热门的PHP框架都有哪些呢?下面让我们来一起盘点一下2016最热门的PHP框架都有哪些。

Laravel


就如谷歌热门趋势表所展现的,Laravel一直是PHP开发者最受欢迎的PHP框架。这是一个年轻的框架,但是拥有优雅的语法,可简单快速开发你的应用。它拥有大多数常见的功能,如:路由,身份验证,会话,队列和缓存。

CodeIgniter


排名第二的是CodeIgniter。它是一个轻量级的PHP框架,提供了简单而精致的平台来开发你的的Web应用程序。但是使得CI排名第二的最重要的原因就是CI并没有提供足够的安全防护,所以这并不是我们选择框架的首选。

Yii 2


一个基于DRY (Don’t Repeat Yourself) 理念的,拥有简洁编程逻辑的纯面向对象框架。Yii2中整合了jQuery还有一套完整的AJAX机制可以使得很好的扩展你的皮肤和主题功能。总的来说,Yii2框架对于前端转后端的开发者来说很友好。

CakePHP


CakePHP同样是一款受PHP开发者欢迎的框架,因为它轻量级、简单、反应迅速并且编写简单。它的模板简单易用。CakePHP基于“CRUD”,这是在数据库交互最方便以及最流行的功能方式。CakePHP还有用像:安全验证、邮件、会话、cookie和请求处理这些功能。CakePHP最大的缺点就是没有支持面向对象。

Symfony2


Symfony一直是PHP开发者稳定使用的框架之一。它非常灵活并且功能强大。Symfony有很多可以复用的部分比如:安全、模板、转义、验证、表单配置等。





温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }