安装了Composer后,运行composer --version
,查看Composer的版本号。若是出现下面的提示,那么软件安装成功。html
Composer version 1.2.0 2016-07-19 01:28:52mysql
若想给某个项目添加相似monolog的第三方库,则按下面的步骤操做:sql
新建composer.json文件,添加内容:json
{ "require": { "monolog/monolog": "1.20.0" }, "repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" // Mirror site in China. } } }
以命令行方式打开项目的根目录,输入命令:composer install
;windows
正常状况下,一切顺利,执行完上述命令就可以成功导入monolog库到项目中。可是,现实与想象老是有段距离,上面只是走完了“长征”路程的一半,还有“雪山”要翻、“草地”要过呢!composer
执行完命令:composer install
后,并不会像期待那样地导入依赖,而是抛出异常。curl
The openssl extension is required for SSL/TLS protection but is not available. If you can not enable the openssl exension, you can disable this error, at your own risk, by setting the 'disable-tls' option to true.ide
这段异常日志的大体意思是,Composer采用SSL链接,须要外挂OpenSSL插件。ui
要消除这个异常,有两种解决方式,一是放弃SSL链接、直接“裸奔”;二是启用OpenSSL。
取消SSL链接的命令是composer config -g -- disable-tls true
。然而并无什么卵用,试过以后,又抛出了新的异常。
剩下来的方案就是尝试启用OpenSSL。安装了PHP后,安装目录(相似C:\php-5.6.24)中包含两个文件,一个是php.ini-development,另外一个是php.ini-production,选择将其中任意的一个文件重命名为php.ini,用做PHP的默认配置文件。经过修改配置文件来启用OpenSSL插件。
编辑php.ini文件,首先,定位到:
; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir extension_dir = "./" ; On windows: extension_dir = "ext"
删除extension_dir = "./"
和extension_dir = "ext"
前面的分号,取消注释这两行代码,配置PHP插件目录为./ext
。
而后,定位到:
... ;extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ...
删除extension=php_openssl.dll
前面的分号,取消注释,从而启用OpenSSL插件。
注意:由于SSL链接须要认证,因此继续下面的步骤以前,须要准备好CA证书(建议把证书保存到C:\php-5.6.24\verify
目录中),能够从https://curl.haxx.se/docs/caextract.html处下载。
接下来,定位到
;openssl.cafile=
和上面同样,删去分号,取消注释,设置CA证书为openssl.cafile= C:\php-5.6.24\verify\cacert.pem
。
最后, 从新在命令行窗口中打开项目的根目录,执行命令:composer install
,等待几分钟后,就能够成功添加monolog依赖。