前言:隨着開源的東西愈來愈多,一些好的代碼咱們是能夠直接拿過來用的,github更是加快了這一節奏,在github上咱們能夠看到一些開源的項目、代碼塊、函數庫、類結構等,咱們能夠直接Fork,而後用在咱們本身的項目中,既高效又方便。nodejs 出現後,更是一大批開源的好東西被咱們使用,npm就是node.js中蠻好用的包管理軟件,咱們能夠用npm 命令複製其餘人的一些好的項目,用起來很爽。可是,php中貌似尚未這樣相似的包管理工具,咱們發現別人的代碼,仍是停留在手工階段,手工將其餘人的代碼copy到本身的項目中,有更新咱們一樣靠手工copy文件。因而composer應運而生了。php
前言說了。composer是PHP的包管理、包依賴關係管理工具,有了它,咱們就很輕鬆一個命令就能夠把他人優秀的代碼用到咱們的項目中來,並且很容易管理依賴關係,更新刪除等操做也很輕易的實現。node
composer是一款軟件,固然也須要安裝。它支持多平臺,咱們將在window和centos 上安裝它。linux
2.1 wondows 安裝git
首先官網下載:https://getcomposer.org/Composer-Setup.exe 。很小。1M都沒有。這個連接永遠是最新版本的。下載好了後。就是各類下一步下一步安裝了,到這一步,須要填入php.ini的所在目錄,記住wamp這類的安裝包會有2個php.ini文件。不要填apache的目錄所在php.ini。須要填入php目錄下的這個配置文件。github
這樣安裝完成了。很爽。apache
2.2 安裝的時候可能會出現如下出錯:npm
意思是說php沒有開啓openssl配置。咱們打開php目錄下的php.ini。將openssl前面的分號去掉就能夠了:windows
提示php的版本過低,composer支持5.3+的版本。若是你是5.3-的話就只能去升級一下php的版本了。centos
接下來咱們驗證一下安裝成功了沒?打開cmd。win+r 快捷鍵打開cmd命令對話框,輸入composer: bash
說明安裝成功了。恭喜。
windows的版本安裝,相對於比較簡單很方便,其實呢,它替咱們作了不少事。
一、 幫咱們把php和composer這兩個命令給加到了系統環境變量。這樣咱們能全局只直接使用這兩個命令:
咱們在安裝的時候能夠看到:
咱們打開系統的環境變量看看,是否添加了:
二、幫咱們把php composer.phar命令簡化成composer命令了。很爽:
2.3 linux上的安裝
linux上的安裝其實說簡單也跟簡單,官網上有不少種安裝方式,咱們知道第一種就能夠了,也是最快的。
curl -s http://getcomposer.org/installer | php
2.4 錯誤提示
一、 若是出現-bash: php: command not found 錯誤提示,說明php是源碼安裝的,php這個命令沒有加入到系統環境。咱們在上一步安裝windows版本的時候,軟件已經幫自動咱們幫把php命令加入了系統環境path路徑。
linux下如何把php加入系統環境呢:
01.修改/etc/profile文件使其永久性生效,並對全部系統用戶生效,在文件末尾加上以下兩行代碼 02.PATH=$PATH:/usr/local/php5/bin 03.export PATH
最後:執行 命令source /etc/profile或 執行點命令 ./profile使其修改生效,執行完可經過echo $PATH命令查看是否添加成功。
二、 若是提示:
#!/usr/bin/env php Some settings on your machine make Composer unable to work properly. Make sure that you fix the issues listed below and run this script again: The openssl extension is missing, which means that secure HTTPS transfers are impossible. If possible you should enable it or recompile php with --with-openssl
也是同樣,php的openssl沒有安裝,須要進入php源代碼從新編譯,我這裏簡單記錄下如何添加php的openssl擴展:
一、由於我是源碼方式安裝的php,因此須要從新編譯,這點比windows上蛋疼的多。進入php的源碼包,若是刪除了的,須要從新下載這個對應的版本:
01.[root@localhost ~]# cd /lamp/php-5.4.11/ext/openssl/ 02.[root@localhost openssl]#
二、 用phpize添加配置編譯:
01.#openssl目錄下有個config.w32和config0.m4,把config0.m4更名爲config.m4(不清楚什麼緣由,必須這麼改,很重要!!!) 02.[root@localhost openssl]# cp config0.m4 config.m4 03.[root@localhost openssl]# /usr/local/php/bin/phpize #使用phpize命令動態添加配置 04.[root@localhost openssl]# ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config #編譯 05.[root@localhost openssl]# make 06.[root@localhost openssl]# make test 07.[root@localhost openssl]# make install 08.Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/
注意:若是configure這一步出錯:configure: error: libssl not found!。多是系統沒安裝openssl擴展,能夠:yum -y install openssl-devel 安裝。
三、 修改php.ini ,把剛纔編譯好的openssl.so添加進去:
01.[root@localhost no-debug-zts-20100525]# vi /usr/local/php/etc/php.ini 02.#GG 定位到最小面,加入這一行: 03.extension=openssl.so
搞定,因爲咱們使用php,並無用到apache。因此能夠不用重啓apache服務器。
安裝好了後,咱們驗證下是否正確安裝:
$ php composer.phar #執行
咱們在正確成功安裝好composer以後,就可使用這個利器了。不論是windows版本仍是linux版本使用命令方式都同樣:
01.php composer.phar + 命令
咱們剛纔安裝的windows版本直接可使用composer 命令,前面說了,其實也是php composer.phar這2個的組合。
新的問題出來了。就是咱們每次要去新下載一個其餘人的項目,咱們都必需要到在新項目的目錄下從新下載一次composer.phar文件或者是這樣:[root@root /]# php /home/test/composer.phar 相對路徑讀取到composer。能不能也把composer.phar像php命令這樣搞成一個全局的。直接用 composer該多好啊!
[root@localhost /]# cd /usr/local/composer/ [root@localhost composer]# cp composer.phar /usr/bin/composer
搞定,這樣就能和windows同樣,全局使用composer命令了。