我們這篇主要講下comoser的裝置以及下載,及其以monolog爲例,演示怎樣實際運用的方法。網上也有許多類似的片斷例子,大都是片斷,無缺的幾乎沒有。因此,我把它整理了,分享給我們。以便我們可以快速上手。
首要我們仍是需求明白composer終究是什麼?
Composer是PHP5.3以上的一個依靠辦理工具。它答應你聲明項目所依靠的代碼庫,它會在你的項目中爲你裝置他們。Composer不是一個包辦理器。是的,它涉及"packages"和"libraries",但它在每一個項目的基礎上進行辦理,在你項目的某個目錄中(例如vendor)進行裝置。默認狀況下它不會在大局裝置任何東西。所以,這僅僅是一個依靠辦理。
composer怎樣裝置?
windows環境下的裝置:
Wondows渠道上,我們只需求下載Composer-Setup.exe後,一步步裝置便可。
需求留意的是你需求開啓openssl配置,我們翻開php目錄下的php.ini,將extension=php_openssl.dll前面的分號去掉就可以了。
在裝置的過程當中,會讓你選擇php的版別,這時分,把你裝置php的目錄選擇上便可;
裝置到最後一步的時分,會把php的這個裝置目錄主動加到環境變量中,請我們必定看清楚,要記得加一下,否則,運用指令行還得輸入一大串,顯着是給本身找麻煩。
裝置完了以後,我們可以經過指令窗口(cmd)輸入composer--version指令來檢查是否裝置成功:(看到了嗎,這即是添加環境變量的優勢,多麼簡練的指令)
接下來我們可以更改Packagist爲國內鏡像:
composerconfig-grepo.packagistcomposer國內鏡像網址
這個只需沒有任何提示,就表明成功了。無須擔憂;
Linux渠道
Linux渠道可以運用如下指令來裝置:
#php-r"copy('裝置網址/installer','composer-setup.php');"#phpcomposer-setup.phpAllsettingscorrectforusingComposerDownloading...Composer(version1.6.5)successfullyinstalledto:/root/composer.pharUseit:phpcomposer.phar
移動composer.phar,這樣composer就可以進行大局調用:
#mvcomposer.phar/usr/local/bin/composer
切換爲國內鏡像:
#composerconfig-grepo.packagistcomposer國內鏡像網址
更新composer:
#composerselfupdate
MacOS體系
MacOS體系可以運用如下指令來裝置:
$curl-sS蘋果裝置地址|php$.phar/usr/local/bin/composer$composer--versionComposerversion1.7.22018-08-1616:57:12
切換爲國內鏡像:
$composerconfig-grepo.packagistcomposer國內鏡像網址
更新composer:
$composerselfupdate
Composer的運用
要運用Composer,我們需求先在項目的目錄下建立一個composer.json文件,文件描述了項目的依靠聯繫。這兒闡明一下哈(我剛開端看到的時分,在項目的目錄價下建立一個composer.json有點蒙圈,我是windows環境,剛下載了composer,尚未樹立什麼項目,要在哪一個項目的目錄下呢?後來我才發現,這個實際上是在你執行指令的默認的那個文件夾下面,好比你是高檔辦理員,administrator,你就可以再c:usersadministrator文件夾下面樹立composer.json這個文件,具體你看看你的指令行途徑就好了)
文件格式以下:
{"require":{"monolog/monolog":"1.2.*"}}
以上文件闡明我們需求下載從1.2開端的任何版別的monolog。闡明一下,我用的php是5.6的,因此可以下載版別1.x的monologmonolog是一個爲5.3以上版別php開發的日誌庫,可是需求留意的是如今主幹版別隻支撐php7以上版別,假如你的服務器環境仍是php5的話,可以運用monolog的1.x版別。
接下來只需運轉如下指令便可裝置依靠包:
composerinstall
當我執行完這個指令的時分,就發如今個人目錄裏邊多了一個vendor文件夾,文件夾內容以下
好,我們如今來看看他應該怎樣用?
monolog號稱是php國際的最好的日誌庫,我們看看把composer下來的這個庫,應用到我們的項目上。
我是在本地搭建的服務器環境,首要發佈了一個站點,簡便起見,我直接用ip地址不一樣端口表明不一樣站點。127.0.0.1:83
在這個站點裏邊,我把剛纔我們運用composer下載下來的文件夾悉數拷貝到這個站點目錄裏邊而後,新建一個php文件mono_test.php
執行一下,成功了。(闡明一下,剛開端找到一些代碼,是$log->info('foo');類似這種的,可是提示不成功,估計是版別的問題,可是我如今的這個1.x版別的,運轉是可以的,請我們放心測試,代碼真實有效。)
看看日誌文件,也記錄下來了。
到此,圓滿完結。
總結:composer能讓我們便利的運用優秀的開發者現已完結的現成的類庫,來節約我們不少的時刻,我們只需運用comoser把他從鏡像站點上搬運下來,而後,把文件夾拷貝到我們本身的項目中,直接用required引進autoload.php文件,我們就能直接運用了。真是太便利了。php