零,简介 

Yii:高性能框架、代码重用性发挥到了极致、惰性加载框架、速度非常快缓存、登录组件、助手(小物件,灵活创建表单,常见html代码)、日志组件等等

适合开发大型web应用系统

yii中国主站:http://www.yiichina.com/
yii国际主站:http://www.yiiframework.com/
yii框架图书:http://www.yiibook.com/
yii各种扩展:http://www.yiiframework.com/extension/
yii论坛:http://www.yiichina.com/forum/ 可以发帖求问

  【yii在什么地方用的多】

  框架:dedecms     ecshop    crm

  Dedecms是内容管理系统的框架

       Ecshop是做商城网站的框架

       Crm是做客户关系管理系统的框架

  以上3个框架都是“专门”针对具体领域的框架,这样的框架不灵活,死板。

       Yii框架是通用的框架,一般适合客户需求比较灵活、比较花样多,比较复杂的地方。

  Yii框架设计模式是主流MVC。

  Yii框架是一个纯OOP面向对象框架。

 

一,YII的安装和部署

    0,前提环境先配置好,yii2.0至少要php5.4以上版本才行。
    
---appserv 2.6.10中php是6.0,但是兼容性有点问题。推荐phpstudy,不推荐wamp和appserv

    1,在浏览器中访问解压缩目录下的requirements.php文件,看环境是否验证通过,不通过会显示对应错误信息。  

(一),使用归档文件安装yii-basic-app安装---推荐
1,解压缩官方归档文件。
2,设置cookieValidationKey的值。
编辑\项目根目录\config\web.PHP,加入cookieValidationKey
$config = [
    'id' => 'basic',
    'basePath' => dirname(__DIR__),
    'bootstrap' => ['log'],
    'components' => [
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => 'HelloWorld',        //这里加入HelloWorld
        ],
        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],
3,安装完成,yii-basic-app安装非常简单。高级版复杂点,看下边教程。

  (二),使用归档文件安装yii-advanced-app---推荐

  这是我做的笔记:
  1、下载归档文件,并解压到web目录下; 下载地址:http://www.yiichina.com/download,下载yii-advanced-app-2.0.6.tgz类似文件即可。
  2、将php目录添加到系统的path变量里;(!!!很重要,不然下边命令执行不了!!!)
  3、运行 "init.bat" 命令,选择开发环境(Development:开发环境; Production:生产环境);
        ---开发环境配置,所有的异常会直接显示在页面。生产环境异常会被Yii2框架异常处理模块捕获。
        ---选择yes即安装。
  4、执行yii初始化命令 "yii.bat";
  5、新建数据库,并修改数据库配置 "\common\config\main-local.php";
  6、创建相应的数据表,执行命令 "yii.bat migrate";

    ---用yii.bat migrate命令初始化数据库表,会新建两个表(migration和user表)

    ---新建表之后,就可以在yii中注册用户和登录了。
  7、前台访问页面 http://localhost/advanced/frontend/web/;
     后台访问页面 http://localhost/advanced/backend/web/;

  (三),Composer安装

  详情可以参考yii中文社区

  

  ---安装成功后提示

   

  ---解决问题

  

  ----使用Composer安装的问题:如果镜像不好,下载速度会特别慢。

 

二,YII配置数据库

  0,新建一个yii对应的数据库,排序规则即编码选择为utf8_general_ci。

  1,在advanced\common\config\main-local.php文件中配置yii连接数据库。

  3,用yii.bat migrate命令初始化数据库表,会新建两个表(migration和user表)

    

  4,新建表之后,就可以在yii中注册用户和登录了。

 

@总结

  1,yii的basic和advanced有什么区别?

  (1),相同点:
  都自带有用户模型(User),有一些基本页面about contact之类的,还有注册登录功能
  (2),不同点:
  basic更适合新手(刚刚接触yii)
  adavanced分两个应用 一个叫frontend(前台) backend(后台),每个应用(App)就类似basic,只不过它将前台和后台分开了,这样可以方便前后台分别用不同域名(需要绑定)来访问,其实和basic稍微复杂一点,但不适合新手,适合学过yii的。
如果你是老手,可以下载一个adavanced来参考,自己搭一个框架(基于Yii2)

  2,可能遇到的问题及解决方法
  ---原文url:http://blog.csdn.net/shanzhihang/article/details/8772758
  (1):yiic执行出现不是内部或外部命令的解决办法
  右击我的电脑-->属性-->高级-->环境变量-->系统变量 设置为"D:\wamp\bin\php\php5.2.5;D:\wamp\www\yii\framework"(具体看自己的环境配置情况)
注:添加环境变量后,关闭cmd重新打开!

  (2):yii-advanced下自带的init.bat和yii.bat找不到php.exe解决方法
  ---用记事本打开上边两个文件(init.bat和yii.bat):
    修改if "%PHP_COMMAND%" == "" set PHP_COMMAND=php.exe为 if "%PHP_COMMAND%" == "" set PHP_COMMAND=D:\wamp\php\php.exe(后面php.exe的路径根据自己的安装环境而定)

    3,第一次访问yii主页提示错误,yii\web\Request::cookieValidationKey must be configured with a secret key?或者yii must be configured witha secret key?

解决方法编辑\项目根目录\config\web.PHP,加入cookieValidationKey
$config = [
    'id' => 'basic',
    'basePath' => dirname(__DIR__),
    'bootstrap' => ['log'],
    'components' => [
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => 'HelloWorld',        //这里加入HelloWorld
        ],
        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],

posted on 2017-01-07 08:45  学到老死  阅读(487)  评论(0)    收藏  举报