PHP成立這么久,一直沒有一個像樣的包管理工具,phper們總是要什么然后google之,而python等好幾種語言都有自己獨立的包管理工具,Composer
的出現無疑彌補了這個空缺,給強大的php又加了幾分。
那Composer
的作用是什么呢? 簡單的來說,就是幫你把很多好的框架及工具管理起來,你要用的時候隨時可以拿。
安裝
- 在從官網下載 Composer-Setup.exe安裝程序后,在安裝過程中會碰到幾個麻煩的地方
- 找不到擴展dll文件,修改php.ini文件內 extension_dir 參數
- browscap未找到,修改php.ini文件內 browscap參數
- SSL dll未找到,修改php.ini文件內";extension=php_openssl.dll",去掉前面“;”
正確的安裝畫面,如下:
使用Composer中文鏡像網站,替代國外鏡像網站
當你安裝完Composer后,卻發現不能下載包,一般是由於國外網絡的問題。所以,我們要什么國內的鏡像站點進行代替。
常用方法有兩種:
- 修改全局配置
全局配置的文件一般放在 C:\Users\XXX\AppData\Roaming\Composer\config.json;
{
"config": {},
"repositories": [{
"type": "composer",
"url": "http://pkg.phpcomposer.com/repo/packagist/"
}, {
"packagist": false
}]
}
- 修改當前配置:即項目當前的composer.json文件;
以 laravel 項目的 composer.json 配置文件為例:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"laravel/framework": "4.2.*"
},
"autoload": {
"classmap": ["app/commands", "app/controllers", "app/models", "app/database/migrations", "app/database/seeds", "app/tests/TestCase.php"]
},
"scripts": {
"post-install-cmd": ["php artisan clear-compiled", "php artisan optimize"],
"post-update-cmd": ["php artisan clear-compiled", "php artisan optimize"],
"post-create-project-cmd": ["php artisan key:generate"]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable",
"repositories": [{
"type": "composer",
"url": "http://pkg.phpcomposer.com/repo/packagist/"
}, {
"packagist": false
}]
}