yii是BSD License下发布的一个开源项目,这意味着您能免费使用它开发开源或私有的Web应用程序,作为一款高性能,基于组件的php框架,因为框架结构和设计精巧的缓存支持,能够完成开发如门户网站、论坛、内容管理系统(CMS)、电子商务项目和RESTful Web服务等。
软件特色
1、运用了PHP命名空间、Trait、 PSR标准 、Composer和Bower包管理器, 等新技术新标准。
2、实现了 依赖注入和依赖注入容器 以及 服务定位器(Service Locator) 等新架构新模式。
3、Yii2.0格外重视安全性,采取一系列手段有效防止SQL注入、XSS攻击、CSRF攻击、cookie篡改等。
广泛支持各类SQL和NOSQL数据库,高效实现了Active Record等数据库查询、操作界面,提供数据库迁移、复制、 读写分离等功能。
4、只需极少量的代码就可以实现完全符合标准的RESTful API。
5、支持各种粒度、介质的缓存机制。
6、提供多种认证和授权手段基于cookie和基于令牌的认证,RBAC等权限控制手段,支持OpenID,OAuth1,OAuth2等。
7、支持Bootstrap,jQuery UI,提供了丰富的Widget挂件供使用。
8、完善的国际化支持,提供符合 ICU标准 的时间、复数等格式化工具和消息翻译、视图翻译等功能。
9、除了支持Twig和Smarty 2个主流的PHP模版引擎外,开发者还可以自己写扩展支持其他引擎。
10、为苦命码农提供了 Yii调试工具条 和 Gii代码生成器 以及 文档生成器 等高效开发工具。
11、集成了 Codeception 和 Faker,并与DB Migration相结合,提供了一个fixture框架,方便测试开发。
使用方法
YII框架安装方法:
前提:非常重要,你的php版本必须是php5.4以上
1.首先需要下载应用模板,分为基础模板和高级应用模板,这里我以高级应用模板为例子 :
下本站提供的的高级应用模板,或上官方下载(https://github.com/yiisoft/yii2-app-advanced )
2.下载完之后解压放在www目录我是放在 D:wampwwwyii2advanced
cmd dos命令进入这个D:wampwwwyii2advanced下:
3.运行 php -r "readfile('https://getcomposer.org/installer');" | php
4.这是就在D:wampwwwyii2advanced目录下面下载了一个composer.phar文件,有了这个文件就可以执行php composer.phar命令了,提示
5.运行php composer.phar global require "fxp/composer-asset-plugin:1.0.0-beta3"这个命令,这个命令式升级模板应用的,一定要执行,否则访问会出错,如果 报 Nothing to install or update这个错误,就跳过此步骤,无需更新了
6.准备所有插件!!非常重要,少了这步一切都会失败
执行命令:php composer.phar global require "fxp/composer-asset-plugin:1.0.0"
7.安装我们的yii2的应用:
执行命令:composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced ../yii2test 就会在上一层目录下生成yii2test应用
请注意,您可能会被提示安装过程中输入你的 GitHub 的用户名和密码。这是正常的。只要输入它们并继续。如果你没有git账号,注册一个就可以了,但是安装的时候可能需要退出cmd,重新操作。
8.最后一步:初始化我们的应用,初始化是在你创建的yii2test目录下 执行cmd init命令 选0 y
ok,这么我们的yii2的安装就完成了,进入测试目录:
localhost/yii2/yii2test/frontend/web/index.php
更新日志
错误7670:添加# Yii 网络 urlnormalizer规范要求并没有尾随斜线(rob006,cronfy,klimov paul)
错误7670:UrlNormalizer说#规范要求并没有尾随斜线(rob006,cronfy,klimov paul)
错误9027:网站的# Yii固定子类 uploadedFile回报父母的实例在调用后(andrewnester)
错误9101:固定# Yii Web视图网络财富管理:一方面:appendtimstamp财产(githubjeka,silverfire)
错误9277:固定# Yii 控制台控制器 assetcontroller失去目标捆绑自定义选项(petrabarus,klimov paul)
错误9561:#固定cangetproperty()和cansetproperty()返回Yii 数据库 baseactiverecord假属性(klimov paul、镍三)
错误10358:在# yii.js Ajax预固定的比赛条件(silverfire)
错误10563:#固定形成文件下载内容配置头(samdark)
错误10567:固定# Yii assetcontroller控制台控制器失去束重写配置,这使得它的外部(他保罗)
错误10587:新#用控制器实例没有响应::event_after_send处理器(samdark,andrewnester)
错误10681:#恢复固定beforevalidate事件调用yii.activeform.js(silverfire)
错误11347:固定# Yii 工具 pjax::registerclientscript()通过自定义容器的pjax js插件(silverfire)
yii2.0是目前软件的最高版本,而1.1版是上代的老版本,现在处于维护状态。2.0版是一个完全重写的版本,采用了最新的技术和协议,包括依赖包管理器(Composer)、PHP 代码规范(PSR)、命名空间、Traits(特质)等等。yii2.0版代表了最新一代框架,是未来几年中我们的主要开发版本。