1.下载Composer_installer.phar

https://getcomposer.org/composer.phar

重命名为  composer_installer.phar

将文件放入根目录WWW

2.开启PHP 的 openssl 扩展

打开对应php版本的php,ini

去掉注释;

3.安装Composer

  1. cmd -> d: -> cd d:/phpstudy/www
  1. php composer_installer.phar

4.设置使用Composer命令

在 C:/   下创建  initcmdenv.cmd  文件 内容如下

  1. @echo off
  2.  
  3. :: Temporary system path(为当前命令行增加额外的PATH,可随意增加不影响全局系统)
  4. set PATH=%PATH%;
  5.  
  6. :: Commands(增加新的快捷命令,必须为DOSKEY 快捷名称=完整命令)
  7. DOSKEY composer=php d:/phpstudy/www/composer.phar $*
  8.  
  9. ::Show something(显示初始化的内容,可以删掉)
  10.  
  11. echo ========DOSKEY==========
  12.  
  13. DOSKEY /macros
  14.  
  15. echo ========END==========

创建  C:\Windows\System32\cmd.exe  快捷方式

设置开解方式目标为    %windir%/system32/cmd.exe /K C:/initcmdenv.cmd

设置好后 直接运行这个 cmd.exe 快捷方式 就可以直接在命令行的任何地方直接使用  composer 命令了。

5.下载 Composer归档包

2个版本,advanced 和 basic :

https://github.com/yiisoft/yii2/releases/download/2.0.9/yii-advanced-app-2.0.9.tgz

https://github.com/yiisoft/yii2/releases/download/2.0.9/yii-basic-app-2.0.9.tgz

下载后解压缩至根目录 WWW

在解压的归档包 composer.json 中添加 中国镜像 地址

  1. {
  2. "repositories": {
  3. "packagist": {
  4. "type": "composer",
  5. "url": "https://packagist.phpcomposer.com"
  6. }
  7. }
  8. }

6. require "fxp/composer-asset-plugin:~1.1.1"  查询并添加最新版本

  1. php composer.phar global require "fxp/composer-asset-plugin:~1.1.1"

  1. composer global require "fxp/composer-asset-plugin:~1.1.1"

7.创建Yii2项目

  1. cmd快捷方式 -> d: -> cd d:/phpstudy/www/baisc (advanced)

advanced:

  1. composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced ../yii2test

basic:

  1. composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic ../yii2test

8.Token   (github)

create a new Token

https://github.com

MyID:50486****@**.com   Password:23*********

将得到的Token输入即可。

等待项目创建完成。

9.在创建的项目内添加phpexcel扩展

  1. {
  2. "require": {
  3. "php": ">=5.4.0",
  4. "yiisoft/yii2": "~2.0.5",
  5. "yiisoft/yii2-bootstrap": "~2.0.0",
  6. "yiisoft/yii2-swiftmailer": "~2.0.0",
  7. "phpoffice/phpexcel": "dev-develop"
  8. },
  9. "config": {
  10. "process-timeout": 1800,
  11. "secure-http": false
  12. },
  13. "repositories": {
  14. "packagist": {
  15. "type": "composer",
  16. "url": "https://packagist.phpcomposer.com"
  17. }
  18. }
  19. }
  1. cmd快捷方式 -> d: -> cd d:/phpstudy/www/NewProject
  1. composer update

10.使用YII2已写好的demo登录

User  SQL:

  1. CREATE TABLE `user` (
  2. `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  3. `username` varchar(32) NOT NULL,
  4. `email` varchar(32) NOT NULL,
  5. `password` varchar(32) NOT NULL,
  6. `authKey` varchar(100) NOT NULL DEFAULT '',
  7. `accessToken` varchar(100) NOT NULL DEFAULT '',
  8. PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

使用gii生成 model User 。

将Class  User  implements \yii\web\IdentityInterface

内容加上登录验证代码

  1.   /**
  2. * @inheritdoc
  3. */
  4. public static function findIdentity($id)
  5. {
  6. return static::findOne($id);
  7. //return isset(self::$users[$id]) ? new static(self::$users[$id]) : null;
  8. }
  9.  
  10. /**
  11. * @inheritdoc
  12. */
  13. public static function findIdentityByAccessToken($token, $type = null)
  14. {
  15. return static::findOne(['access_token' => $token]);
  16. /*foreach (self::$users as $user) {
  17. if ($user['accessToken'] === $token) {
  18. return new static($user);
  19. }
  20. }
  21.  
  22. return null;*/
  23. }
  24.  
  25. /**
  26. * Finds user by username
  27. *
  28. * @param string $username
  29. * @return static|null
  30. */
  31. public static function findByUsername($username)
  32. {
  33. $user = User::find()
  34. ->where(['username' => $username])
  35. ->asArray()
  36. ->one();
  37.  
  38. if($user){
  39. return new static($user);
  40. }
  41.  
  42. return null;
  43. /*foreach (self::$users as $user) {
  44. if (strcasecmp($user['username'], $username) === 0) {
  45. return new static($user);
  46. }
  47. }
  48.  
  49. return null;*/
  50. }
  51.  
  52. /**
  53. * @inheritdoc
  54. */
  55. public function getId()
  56. {
  57. return $this->id;
  58. }
  59.  
  60. /**
  61. * get level by username
  62. * @param string username
  63. * @return string level
  64. */
  65. public function getLevelByusername($username)
  66. {
  67. $user = User::find()
  68. ->where(['username' => $username])
  69. ->asArray()
  70. ->one();
  71. return $user['level'];
  72. }
  73.  
  74. /**
  75. * @inheritdoc
  76. */
  77. public function getAuthKey()
  78. {
  79. return $this->authKey;
  80. }
  81.  
  82. /**
  83. * @inheritdoc
  84. */
  85. public function validateAuthKey($authKey)
  86. {
  87. return $this->authKey === $authKey;
  88. }
  89.  
  90. /**
  91. * Validates password
  92. *
  93. * @param string $password password to validate
  94. * @return boolean if password provided is valid for current user
  95. */
  96. public function validatePassword($password)
  97. {
  98. return $this->password === $password;
  99. }

这样设置的User就可以直接登录使用啦。

Composer Yii2 不设置全局变量 归档安装 Win7的更多相关文章

  1. composer在windows下安装并且设置全局变量

    Composer是 PHP 用来管理依赖(dependency)关系的工具.你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件. 1丶使用安 ...

  2. 【解决方法】安装Win7和linux双系统后,linux报错“无法分配所提交的分区 not enough free space on disks”问题,以及win7无法启动“BootMGR image is corrupt....”问题

    近日,在笔记本上重装了Win7 企业版(64位)后,想装个linux双系统,于是开始安装 centOS 6.2(光盘安装) 硬盘分了一个主分区(c盘),一个扩展分区(3个逻辑分区:d,e,f盘),然后 ...

  3. 预装WIN8系统的电脑安装WIN7的方法

    前些天,给一位客户的本本安装WIN7,因为原来预装了WIN8,结果按常规方法安装一直没有成功,不管是光盘还U盘.所以心里一直有个疑问,所以留意查阅了有关资料和相关的文章,终于明白了问题所在,现在在这里 ...

  4. Mac OS X 安装Win7双系统

    Mac10安装双系统 为了有一个纯净的开发环境,就在mac电脑中安装windows虚拟机.刚开始使用还很顺利,两个系统的交互很方便,mac用来下载.搜索和写笔记:windows纯开发.时间长了以后关机 ...

  5. X240s安装Win7 以及如何启用ExpressCache

    新买了一台X240S笔记本,尝试了带的Win8正版一个月后,实在无法适应Win8,干脆退回Win7完事,以下为安装过程, 第一步:制作启动U盘 首先,下载一个iso格式的Win7安装镜像文件,利用微软 ...

  6. 安装Win7提示Windows无法安装到磁盘怎么办

    Windows之家(www.windowszj.com):在安装Win7系统的过程中,由于每台电脑的状态不一样,比如硬件配置原因,或者是硬盘格式.硬盘状态等问题,会使得每台电脑在安装过程中都会有些不一 ...

  7. U盘安装Win7操作系统

    玩转Windows7系统镜像四部曲 Step 1: 下载Win7 ISO系统镜像 温馨提示:请您尽量选用Win7之家​提供的官方原版镜像安装,因为正版比各种所谓的"精简版.纯净版" ...

  8. U盘启动笔记本无法安装Win7问题和解决

    用“大白菜”工具制作启动U盘,从U盘启动后进入Win PE环境安装Win7,提示“安装win7系统安装程序无法创建新的系统分区,也无法定位现有系统分区”.经以下各种努力后仍无法正常安装: 在BIOS里 ...

  9. ubuntu系统中的VMware 安装win7 Ghost镜像的几个坑

    1.ghost镜像安装时要先分区 2.分区后要激活 3.VM(虚拟机安装win7 提示 :units specified don't exist, SHSUCDX can't install)解决方法 ...

随机推荐

  1. js 小练习之indexOf

    闲来无事~ 写点小练习 function zz(arr, item) { var a=arr.join("") var b=a.indexOf(item) alert(b) } z ...

  2. 十大算法 pagerank 傅里叶变换

    来源于最近阅读的一些链接 首先是介绍十大算法的 http://blog.jobbole.com/70639/ 然后是pageRank算法 http://blog.jobbole.com/23286/ ...

  3. juce中的引用计数

    这个类提供了最基本的引用计数管理,界面库中,经常都需要消息发送,而带来的后果就是不知道消息中包含的对象是否还存在,如果不能很好管理的话就容易出现访问销毁了的对象这样的情况,所以,juce的界面无素也基 ...

  4. Windows2008RT搭建VPN服务器

    总结一下2008系统搭建VPN的步骤和过程,自己有个人网站和服务要通过互联网发布出来.服务器放在自己家里,宽带是民用的.也就产生了服务发布的一些问题.用无法映射出真实的公网IP,或是一些其他内部的问题 ...

  5. QT进度条QProgressBar的练习

    progressbar.h #ifndef PROGRESSBAR_H #define PROGRESSBAR_H #include <QProgressBar> class QStrin ...

  6. 深入学习PE文件(转)

    PE文件是Win32的原生文件格式.每一个Win32可执行文件都遵循PE文件格式.对PE文件格式的了解可以加深你对Win32系统的深入理解. 一. 基本结构. 上图便是PE文件的基本结构.(注意:DO ...

  7. 《转》精巧好用的DelayQueue

    该文章转自:http://www.cnblogs.com/jobs/archive/2007/04/27/730255.html 我们谈一下实际的场景吧.我们在开发中,有如下场景 a) 关闭空闲连接. ...

  8. 如何使Label带有链接??此法感觉有点取巧!!!

    关键代码 /**************************************************************第一行***************************** ...

  9. In-System Debugger for 8051 Devices(ISD 8051单片机在线调试器)

    此文档包含了最新版本的说明及最近的更新特别是对 ISD51 的说明(用户手册没有此说明) Keil Software,Inc and Keil Elektronik GmbH保留所有此文件中涉及的信息 ...

  10. 面向对象程序设计-C++_课时30运算符重载——基本规则_课时31运算符重载——原型_课时32运算符重载——赋值_课时33运算符重载——类型转换

    区分初始化,赋值 #include <iostream> using namespace std; class Fi { public: Fi() {}//1构造函数 }; class F ...