最近在学习yii2的框架的相关知识,对于yii2的许多新特性,最好还是去查看官网文档最好,如果有中文翻译的网站就更好了。
学习yii2的第一个门槛就是得安装composer这个依赖管理工具(但目前我认为就是个包管理器,虽然官网有其解释)。
要安装composer的第二个门槛就是要根据我国特色来科学上网。因此,在我还没有开始学习yii2的时候,已经有两道门槛挡在我面前了。对于新手来说,估计就要快放弃了 *_* ,幸亏,官方还提供了另外的安装方法,直接将yii的程序打包好,下载下来即可使用,方便快捷。
但是作为一个有志于在挨踢界闯天下的俺,怎么可以因为这样的两道门槛,而放弃学习新的开(装)发(逼)技能呢?
不扯淡了,下面进入正题:
在windows下安装composer有两种方法:一种是傻瓜式的安装、另一种就是高大上的命令行了。小弟我才疏学浅,没能在命令行中成功安装composer,转而奔向了傻瓜式的next->next->finished模式。
这里提供一个网址(http://docs.phpcomposer.com/00-intro.html#Declaring-dependencies),上面有这两种的安装方式,但是都需要一个前(门)提(槛),要懂得科学上网。
看完上面网址提供的方法后,我就亟不可待的开始按步骤安装了,可惜因为没开科学上网模式,我的第一次,就因此失败了。
一、下面是失败的安装过程:
下载并且运行 Composer-Setup.exe,弹出演奏家的安装界面
下一步
下一步
是否通过代理(proxy),记得不要勾选哦
下一步
然后就是漫长的等待,等啊等,……
最后出现了如下提示,
哦,no,压根就没连上人家的服务器。
报错信息如上:The "https://getcomposer.org/download/1.0.3/composer.phar.sig" file could notbe downloaded:failed to open stream:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
作为对自己有严格要求的程序员,当下就回想,是我哪里写错了吗?
嗯,不对,这是别人的程序。哦,那有没有文档说明了?报告,文档里灭有针对这个情况做介绍。啊?他们的测试时干嘛的了,这都测不出来吗?报告,这是在天朝,情况可能有点特殊。嗯,也是,算了,开启科学上网模式。
二、第二次安装,步骤如下:
运行 Composer-Setup.exe,弹出演奏家的安装界面
下一步,
下一步,
下一步,
某管家给我弹出警告,
对此,我只是呵呵一笑,点击记住我的选择,允许,然后就出现了successful。OMG,终于安装成功了,yes it is,i will come .
下面是composer的安装位置和协议秘钥位置:
安装位置:
秘钥位置:
至此,composer就可以安心的为我服务了。
三、使用方法:
如何在命令行下查看composer是否安装成功呢?
在命行下键入:composer,输出composer的介绍:
在命令行中可以看到composer的标志,说明composer是安装成功的;
以安装monolog为例,演示composer的使用方法:
接下来我们在www/目录下,创建cmoposer目录,在命令行中输入:composer require monolog/monolog ,等待:如下图时,表明monolog安装成功
上面大红框圈中的是安装monolog所需要的依赖。
下面是安装好的monolog目录
为了验证monolog安装是否成功,这里有一个官方的小示例,如下:
<?php
require_once(‘vendor/autoload.php‘);
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
// create a log channel
$log =newLogger(‘name‘);
$log->pushHandler(newStreamHandler(‘D:/uploads/your.log‘,Logger::WARNING));
// add records to the log
$log->warning(‘Foo‘);
$log->error(‘Bar‘);
成功后可以在D盘下的uploads目录下,看到一个your.log日志文件,如下图;
附件是我使用composer安装的monolog,及使用案例。
OK,composer的初级安装及使用,到此结束了。
参考网址:http://docs.phpcomposer.com/ composer中文简介
https://getcomposer.org/ composer官方网址
http://blog.tanteng.me/2015/05/could-not-open-input-file-composer-phar/ 小谈博客
https://packagist.org/ 软件包
https://github.com/Seldaek/monolog monolog的github仓库