composer

如何查看composer安裝路徑,全局使用composercomposer安裝后怎么找不到它的文件安裝路徑 CentOS 7下安裝Composer
安裝Composer 1、將composer.phar下載到項目中 使用curl -sS下載Composer 的二進制文件 , 是一個 PHAR
包(PHP 的歸檔) 2、可以通過 --install-dir 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑)

composer安裝后怎么找不到它的文件安裝路徑composer安裝后怎么找不到它的文件安裝路徑
CentOS 7下安裝Composer
安裝Composer
1、將composer.phar下載到項目中
使用curl -sS下載Composer 的二進制文件,是一個 PHAR 包(PHP 的歸檔)
2、可以通過 --install-dir 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑):curl -sS

3、如果把composer.phar放在系統的 PATH 目錄中,就能在全局訪問composer.phar 。在類Unix系統中,你甚至可以在使用時不加 php 前綴 。可以執行這些命令讓 composer 在你的系統中進行全局調用:
#mv composer.phar /usr/local/bin/composer
現在只需要運行 composer 命令就可以使用 Composer 而不需要輸入 php composer.phar 。
4、檢查 Composer 是否正常工作,只需要通過 php 來執行 PHAR:php composer.phar這將返回給你一個可執行的命令列表 。

使用 Composer
要在項目中使用 Composer,只需要一個 composer.json 文件 。該文件包含了項目的依賴和其它的一些元數據 ?,F在使用 Composer 來安裝項目的依賴 。
1、創建 composer.json 文件
在當前目錄下創建 composer.json 文件,在 composer.json 文件中指定 require key 的值 。簡單的告訴 Composer 你的項目需要依賴哪些包 。
例如:
{"require": {"monolog/monolog": "1.0.*"} }
可以看到,require 需要一個 包名稱monolog/monolog映射到 包版本 1.0.*的對象 。包名稱由供應商名稱和其項目名稱構成 。
2、安裝依賴包
執行 install 命令獲取定義的依賴到本地項目:
php composer.phar install
如果你進行了全局安裝 , 并且沒有 phar 文件在當前目錄,使用下面的命令代替:
composer install
這將會找到 monolog/monolog 的最新版本,并將它下載到 vendor 目錄 。這是一個慣例把第三方的代碼到一個指定的目錄 vendor 。如果是 monolog 將會創建 vendor/monolog/monolog 目錄 。
注意: install 命令將創建一個 composer.lock 文件到你項目的根目錄中 。

3、自動加載
除了庫的下載,Composer 還準備了一個自動加載文件,它可以加載 Composer 下載的庫中所有的類文件 。使用它,你只需要將下面這行代碼添加到你項目的引導文件中:
require 'vendor/autoload.php';
現在我們就可以使用 monolog 了

怎樣查看composer 版本3、如果把composer.phar放在系統的 PATH 目錄中,就能在全局訪問composer.phar 。在類Unix系統中,你甚至可以在使用時不加 php 前綴 ??梢詧绦羞@些命令讓 composer 在你的系統中進行全局調用:
#mv composer.phar /usr/local/bin/composer
現在只需要運行 composer 命令就可以使用 Composer 而不需要輸入 php composer.phar 。
4、檢查 Composer 是否正常工作 , 只需要通過 php 來執行 PHAR:php composer.phar這將返回給你一個可執行的命令列表 。

使用 Composer
要在項目中使用 Composer,只需要一個 composer.json 文件 。該文件包含了項目的依賴和其它的一些元數據 ?,F在使用 Composer 來安裝項目的依賴 。
1、創建 composer.json 文件
在當前目錄下創建 composer.json 文件,在 composer.json 文件中指定 require key 的值 。簡單的告訴 Composer 你的項目需要依賴哪些包 。
例如:
{"require": {"monolog/monolog": "1.0.*"} }
可以看到, require 需要一個 包名稱monolog/monolog映射到 包版本 1.0.*的對象 。包名稱由供應商名稱和其項目名稱構成 。

怎么使用php 包依賴管理工具 composer 執行命令安裝CentOS7下安裝Composer安裝Composer1、將composer.phar下載到項目中使用curl-sShttps://getcomposer.org/installer|php下載Composer的二進制文件,是一個PHAR包(PHP的歸檔)2、可以通過--install-dir選項指定Composer的安裝目錄(它可以是一個絕對或相對路徑):curl-sShttps://getcomposer.org/installer|php----install-dir=lumen3、如果把composer.phar放在系統的PATH目錄中,就能在全局訪問composer.phar 。在類Unix系統中 , 你甚至可以在使用時不加php前綴 ??梢詧绦羞@些命令讓composer在你的系統中進行全局調用:#mvcomposer.phar/usr/local/bin/composer現在只需要運行composer命令就可以使用Composer而不需要輸入phpcomposer.phar 。4、檢查Composer是否正常工作,只需要通過php來執行PHAR:phpcomposer.phar這將返回給你一個可執行的命令列表 。使用Composer要在項目中使用Composer,只需要一個composer.json文件 。該文件包含了項目的依賴和其它的一些元數據 ?,F在使用Composer來安裝項目的依賴 。1、創建composer.json文件在當前目錄下創建composer.json文件 , 在composer.json文件中指定requirekey的值 。簡單的告訴Composer你的項目需要依賴哪些包 。例如:{"require":{"monolog/monolog":"1.0.*"}}可以看到,require需要一個包名稱monolog/monolog映射到包版本1.0.*的對象 。包名稱由供應商名稱和其項目名稱構成 。2、安裝依賴包執行install命令獲取定義的依賴到本地項目:phpcomposer.pharinstall如果你進行了全局安裝,并且沒有phar文件在當前目錄,使用下面的命令代替:composerinstall這將會找到monolog/monolog的最新版本,并將它下載到vendor目錄 。這是一個慣例把第三方的代碼到一個指定的目錄vendor 。如果是monolog將會創建vendor/monolog/monolog目錄 。注意:install命令將創建一個composer.lock文件到你項目的根目錄中 。3、自動加載除了庫的下載,Composer還準備了一個自動加載文件,它可以加載Composer下載的庫中所有的類文件 。使用它,你只需要將下面這行代碼添加到你項目的引導文件中:require'vendor/autoload.php';現在我們就可以使用monolog了

如何使用composer安裝phinx因為 composer update 的邏輯是按照 composer.json 指定的擴展包版本規則,把所有擴展包更新到最新版本,注意,是 所有擴展包,舉個例子 , 你在項目一開始的時候使用了 monolog,當時的配置信息是
"monolog/monolog": "1.*",

安裝的是 monolog 1.1 版本 , 而一個多月以后的現在,monolog 已經是 1.2 了,運行命令后直接更新到 1.2,這時項目并沒有針對 1.2 進行過測試,項目一下子變得很不穩定,情況有時候會比這個更糟糕,尤其是在一個龐大的項目中,你沒有對項目寫完整覆蓋測試的情況,什么東西壞掉了你都不知道 。
簡單解釋
composer install - 如有 composer.lock 文件,直接安裝,否則從 composer.json 安裝最新擴展包和依賴;
composer update - 從 composer.json 安裝最新擴展包和依賴;
composer update vendor/package - 從 composer.json 或者對應包的配置,并更新到最新;
composer require new/package - 添加安裝 new/package , 可以指定版本,如: composer require new/package ~2.5.
流程
接下來介紹幾個日常生產的流程,來方便加深大家的理解 。
流程一:新項目流程
創建 composer.json,并添加依賴到的擴展包;
運行 composer install ,安裝擴展包并生成 composer.lock ;
提交 composer.lock 到代碼版本控制器中,如:git;
流程二:項目協作者安裝現有項目
克隆項目后 , 根目錄下直接運行 composer install 從 composer.lock 中安裝指定版本 的擴展包以及其依賴;
此流程適用于生產環境代碼的部署 。
流程三:為項目添加新擴展包
使用 composer require vendor/package 添加擴展包;
提交更新后的 composer.json 和 composer.lock 到代碼版本控制器中,如:git;
關于 composer.lock 文件
composer.lock 文件里保存著對每一個代碼依賴的版本記錄(見下圖),提交到版本控制器中,并配合 composer install 使用,保證了團隊所有協作者開發環境、線上生產環境中運行的代碼版本的一致性 。

關于擴展包的安裝方法
那么 , 準備添加一個擴展包,install, update, require 三個命令都可以用來安裝擴展包,選擇哪一個才是正確的呢?
答案是:使用 composer require 命令
另外,在手動修改 composer.json 添加擴展包后, composer update new/package 進行指定擴展包更新的方式,也可以正確的安裝 , 不過不建議使用這種方法,因為,一旦你忘記敲定后面的擴展包名 , 就會進入萬劫不復的狀態,別給自己留坑呀 。
上面的概念不論對新手或者老手來說,都比較混淆 , 主要記住這個概念:
原有項目新添加擴展的,都使用 composer require new/package 這種方式來安裝 。

如何安裝Composer解壓下載的壓縮包,找到“Composer-Setup.exe”安裝程序,雙擊運行,進入安裝界面,點擊"next” 。選擇自己安裝的php.exe , composer將會為你檢查php配置和一些其他的設置 。代理服務器設置,這里小編沒有用代理服務器,直接點擊“next” 。很快就安裝好了,點擊“finish”退出安裝界面 。打開CMD,輸入composer,出現下圖所示界面則表示安裝成功了 。http://www.ddooo.com/softdown/94966.htm
window怎么安裝composer百度搜索下載 Composer-Setup.exe 安裝軟件包


下載成功!

準備安裝軟件,雙擊軟件就可以安裝此軟件 默認安裝裝就可以了,并會自動搜索PHP.exe的安裝路徑 。

稍等一會,下載組件

顯示此頁面表示安裝完成!如果報錯 就檢查 PHP擴展的OpenSSL 有沒有打開

驗證是否成功 。打開win+R 》 cmd輸入 composer,顯示如下界面 表示安裝成功!

如何安裝composerComposer(php依賴關系管理工具) v1.4.1官方版http://www.ddooo.com/softdown/94966.htm
Composer是PHP中的依賴關系管理工具 。說到PHP , 難免會觸及到composer , 尤其像laravel、yii這樣的框架,都可以看到composer的身影 。你可以在自己的項目中聲明所依賴的外部工具庫(libraries),Composer會幫你安裝、更新這些依賴的庫文件 。Composer需要PHP 5.3.2+ 。還需要一些敏感的php設置和編譯標志 , 但是當使用安裝程序時,將警告任何不兼容性 。
Composer安裝教程
1.解壓下載的壓縮包,找到“Composer-Setup.exe”安裝程序,雙擊運行,進入安裝界面,點擊"next” 。

2.選擇自己安裝的php.exe,composer將會為你檢查php配置和一些其他的設置 。

3.代理服務器設置,這里小編沒有用代理服務器,直接點擊“next” 。

4.很快就安裝好了,點擊“finish”退出安裝界面 。

5.打開CMD,輸入composer,出現下圖所示界面則表示安裝成功了 。

如何安裝Composer百度搜索下載 Composer-Setup.exe 安裝軟件包

準備安裝軟件,雙擊軟件就可以安裝此軟件 默認安裝裝就可以了,并會自動搜索PHP.exe的安裝路徑 。

稍等一會 , 下載組件顯示此頁面表示安裝完成!如果報錯 就檢查 PHP擴展的OpenSSL 有沒有打開驗證是否成功 。打開win+R 》 cmd輸入 composer,顯示如下界面 表示安裝成功!
注意事項:切記打開PHP擴展的openssl擴展!

如何用composer指定安裝laravel版本例如我想安裝laravel5 不想要5.1怎么安裝composer create-project laravel/laravel=5.0.* --prefer-dist

composer安裝哪個版本好 方法/步驟
1
百度搜索下載 Composer-Setup.exe 安裝軟件包
2
下載成功!
3
準備安裝軟件,雙擊軟件就可以安裝此軟件 默認安裝裝就可以了 , 并會自動搜索PHP.exe的安裝路徑 。
4
稍等一會,下載組件
5
顯示此頁面表示安裝完成!如果報錯 就檢查 PHP擴展的OpenSSL 有沒有打開

6
驗證是否成功 。打開win+R 》 cmd輸入 composer,顯示如下界面 表示安裝成功!

怎么安裝 指定版本的lumen我只知道通過composer安裝方法 , lumen命令不知道
composer create-projectlaravel/lumen blog--prefer-dist"5.5.*"
blog 是你創建的項目名5.5.* 是你要指定的版本

composer安裝Laravel只有5.2版本通過指定版本號可以安裝不同版本的laravel,比如安裝5.4版本用下面的命令行即可
composer create-project --prefer-dist laravel/laravel blog 5.4.*

php7版本怎么安裝composer方法/步驟
百度搜索下載 Composer-Setup.exe 安裝軟件包

下載成功!

準備安裝軟件,雙擊軟件就可以安裝此軟件 默認安裝裝就可以了 , 并會自動搜索PHP.exe的安裝路徑 。

稍等一會 , 下載組件

顯示此頁面表示安裝完成!如果報錯 就檢查 PHP擴展的OpenSSL 有沒有打開

驗證是否成功 。打開win+R 》 cmd輸入 composer,顯示如下界面 表示安裝成功!

怎么更新composer版本composer create-project laravel/laravel=5.0.* --prefer-dist

怎么修改composer安裝時php版本這個問題我不是怎么很清楚?你在這里問也找不到什么詳細的答案,還不如去后盾找找看,去看看又沒有什么,不喜歡你也可以在另找!

composer安裝 怎么選擇安裝版本Composer安裝教程1.打開Composer解壓下載的壓縮包,找到“Composer-Setup.exe”安裝程序,雙擊運行,進入安裝界面,點擊"next” 。2.選擇自己安裝的php.exe,composer將會為你檢查php配置和一些其他的設置 。3.代理服務器設置 , 這里小編沒有用代理服務器,直接點擊“next” 。4.很快就安裝好了,點擊“finish”退出安裝界面 。5.打開CMD,輸入composer,出現下圖所示界面則表示安裝成功了 。
如何卸載 composervid Media Composer是一款視頻編輯工具 。

1、可以通過控制面板進行卸載,同時按WIN+R鍵,打開“運行”對話框,輸入appwiz.cpl,按回車鍵,打開“控制面板”的“卸載程序”界面,找到此程序,右鍵選擇“卸載”即可 。
2、可以通過360、qq管家等軟件的應用程序管理軟件進行卸載 。以qq管家為例 , 打開“軟件管理”,左側點擊“卸載“,右側找到此程序,點擊“卸載”即可 。

如何卸載 composer有三種常見卸載方式,但根據軟件,不一定都具備 。1、安裝完軟件后 , 不單有軟件運行快捷圖標,同時還會有一個卸載該軟件的快捷圖標,名字有很多,比如“卸載****”、“Uninstall***”等,直接運行,根據提示進行卸載就可以 。2、在“我的電腦”里“控制面板”里面,有一個“添加/刪除程序” , 點擊進入后 , 等它掃描一會兒后會出現你安裝過的程序,在里面找到你要卸載的軟件,然后點擊卸載 。3、現在有很多第三方軟件,比如“360安全衛士”、“金山安全衛士”等,里面就有卸載安裝的軟件功能,進入后選擇要卸載的軟件進行卸載?。。?

如何卸載 composer打開命令控制界面
輸入:composer remove

第二步:
刪除C盤下的composer文件夾

php用composer安裝模塊 如何卸載我安裝的模塊呢把你的php安裝路徑加入系統變量或者在PHP安裝目錄下執行 。

如何卸載 composer找到安裝位置,rm掉即可

windows 安裝完composer怎么用以下界面應該是這個,他應該是忘記放圖了
如何在Windows使用Composer

composer

文章插圖

一、使用工具:Composer安裝文件、windows操作系統二、方法步驟:1、下載Composer-Setup.exe;2、打開php.ini配置文件;開啟php_openssl.dll擴展;3、然后重啟web服務器;比如:apache,Nginx,IIS等;4、雙擊運行Composer-Setup.exe文件;5、點擊:Next按鈕;6、點擊:Broser按鈕,然后查找查找并選擇PHP.exe文件;然后點擊:Next按鈕;7、點擊:Next按鈕;8、點擊:Install按鈕進行安裝;9、點擊:Next按鈕;10、點擊:Finish按鈕完成安裝;11、打開DOS窗口;12、輸入:composer 回車;出現下面信息,則表示Composer安裝成功!三、注意事項:安轉時不要勾選代理;php.exe的路徑;
如何在Windows使用Composer一、使用安裝程序
去官網下載并且運行 Composer-Setup.exe,它將安裝最新版本的 Composer ,并設置好系統的環境變量,因此用戶可以在任何目錄下直接使用 composer 命令 。
二、手動安裝
設置系統的環境變量 PATH 并運行安裝命令下載 composer.phar 文件:
C:\Users\username>cd C:\bin
C:\bin>php -r "readfile('https://getcomposer.org/installer');" | php
注:如果收到 readfile 錯誤提示,請使用 http 鏈接或者在 php.ini 中開啟 php_openssl.dll。
三、在 composer.phar 同級目錄下新建文件 composer.bat :
C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat
關閉當前的命令行窗口,打開新的命令行窗口進行測試:
C:\Users\username>composer -V Composer version 27d8904
看到版本號的同時意味著已經安裝成功了 。
四、測試是否安裝成功
安裝好以后,查看是否安裝成功,在任何目錄下點擊右鍵可看到composer菜單 。

(望樓主采納哦)

如何在Windows使用ComposerComposer 是PHP的包管理工具,非常方便 。但是安裝使用 , 卻沒有官方教程那么簡單,尤其是在中國,還有Windows下......本文將教如何正確安裝Composer 及正確使用 。

一,設置php.ini,方便安裝
在從官網下載 Composer-Setup.exe安裝程序后,在安裝過程中會碰到幾個麻煩的地方:
1. 找不到擴展dll文件,修改php.ini文件內 extension_dir 參數
2. browscap未找到 , 修改php.ini文件內 browscap參數
3. SSL dll未找到,修改php.ini文件內";extension=php_openssl.dll",去掉前面“;”


二,
使用Composer中文鏡像網站,替代國外網站
當安裝完Composer后 , 使用時 , 缺發現不能下載包,這是一個眾所周知的原因 。
所以,要什么國內的鏡像站點進行代替 , 常用方法有兩種:
1. 修改全局配置:全局配置的文件一般放在 C:\Users\XXX\AppData\Roaming\Composer\config.json;

{"config": {},"repositories": [{"type": "composer", "url": "http://pkg.phpcomposer.com/repo/packagist/"},{"packagist": false}]}

2. 修改當前配置:即項目當前的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": ""},
{"packagist": false}
]
}

window環境下安裝composer后怎么用到php方法/步驟 1 百度搜索下載 Composer-Setup.exe 安裝軟件包 2 下載成功! 3 準備安裝軟件,雙擊軟件就可以安裝此軟件 默認安裝裝就可以了,并會自動搜索PHP.exe的安裝路徑 。4 稍等一會,下載組件 5 顯示此頁面表示安裝完成

如何在Linux上安裝ComposerComposer安裝必須要先安裝PHP環境 局部安裝 要真正獲取 Composer,我們需要做兩件事 。首先安裝 Composer (同樣的,這意味著它將下載到你的項目中): curl -sS https://getcomposer.org/installer | php 全局安裝 你可以將此文件放在任何地方 。...

如何在Linux上安裝Composer如何在Linux上安裝Composer
1、檢查系統需求
Apache/Nginx
MySQL
PHP 5.5.9+
Composer
PHP擴展:OpenSSL、 PDO、Mbstring、Tokenizer、Fileinfo、GD(2.0+)/Imagick(6.5.7+)
系統滿足上述需求后才能繼續進行安裝 。
2、使用Composer安裝項目和依賴
在web根目錄下運行以下命令:
composer create-project pyrocms/pyrocms=3.0-beta1 --prefer-source

注意在Windows系統中這里我們不能使用--prefer-dist選項進行安裝,否則會報錯:
[ErrorException]
ZipArchive::extractTo(): No such file or directory

注:使用--prefer-source選項會強制克隆源代碼,而不是像--prefer-dist那樣強制下載git引用的壓縮包 。
Composer使用PHP的ZipArchive擴展壓縮文件,使用--prefer-dist安裝在Windows系統上存在一個問題:如果路徑大于256個字符或者包含.會拋出上述錯誤異常,進而導致Composer不能繼續往下運行 。Linux上則不存在這個問題 。
安裝完成后,如果是在Linux環境需要配置storage、public/assets、bootstrap/cache目錄的可寫權限 。
如果你覺得Composer安裝麻煩還可以使用學院提供的一鍵安裝包:PyroCMS 3.0測試版一鍵安裝包 。

如何在Linux上安裝Composer一、局部安裝局部安裝是將 composer 安裝到當前目錄下面(比如安裝到項目根目錄下),然后就可以通過 php composer.phar 來使用 composer 了 。Mac 或 Linux 系統:打開命令行窗口并執行如下命令:二、全局安裝:全局安裝是將 composer 安裝到系統環境變量 PATH 所包含的路徑下面,然后就能夠在命令行窗口中直接執行 composer 命令了 。Mac 或 Linux 系統:打開命令行窗口并執行如下命令:

如何在Linux上安裝Composer如果你使用的是 Debian 系列的 Linux ,如 Ubuntu 或 Mint ,在連接了互聯網的條件下使用命令:
apt install composer

即可 。
如果你用的 Linux 是 Fedora 和 RedHat、 紅旗 之類的垃圾版本,把 apt 三個字母換成 yum 效果等同 。

composer安裝包安裝后怎么用CentOS 7下安裝Composer
安裝Composer
1、將composer.phar下載到項目中
使用curl -sS https://getcomposer.org/installer | php下載Composer 的二進制文件,是一個 PHAR 包(PHP 的歸檔)
2、可以通過 --install-dir 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑):curl -sS https://getcomposer.org/installer | php -- --install-dir=lumen

3、如果把composer.phar放在系統的 PATH 目錄中,就能在全局訪問composer.phar 。在類Unix系統中,你甚至可以在使用時不加 php 前綴 ??梢詧绦羞@些命令讓 composer 在你的系統中進行全局調用:
#mv composer.phar /usr/local/bin/composer
現在只需要運行 composer 命令就可以使用 Composer 而不需要輸入 php composer.phar 。
4、檢查 Composer 是否正常工作,只需要通過 php 來執行 PHAR:php composer.phar這將返回給你一個可執行的命令列表 。



使用 Composer
要在項目中使用 Composer,只需要一個 composer.json 文件 。該文件包含了項目的依賴和其它的一些元數據 ?,F在使用 Composer 來安裝項目的依賴 。
1、創建 composer.json 文件
在當前目錄下創建 composer.json 文件 , 在 composer.json 文件中指定 require key 的值 。簡單的告訴 Composer 你的項目需要依賴哪些包 。
例如:
{"require": {"monolog/monolog": "1.0.*"} }
可以看到 ,  require 需要一個 包名稱monolog/monolog映射到 包版本 1.0.*的對象 。包名稱由供應商名稱和其項目名稱構成 。
2、安裝依賴包
執行 install 命令獲取定義的依賴到本地項目:
php composer.phar install
如果你進行了全局安裝,并且沒有 phar 文件在當前目錄,使用下面的命令代替:
composer install
這將會找到 monolog/monolog 的最新版本,并將它下載到 vendor 目錄 。這是一個慣例把第三方的代碼到一個指定的目錄 vendor 。如果是 monolog 將會創建 vendor/monolog/monolog 目錄 。
注意: install 命令將創建一個 composer.lock 文件到你項目的根目錄中 。

3、自動加載
除了庫的下載,Composer 還準備了一個自動加載文件,它可以加載 Composer 下載的庫中所有的類文件 。使用它,你只需要將下面這行代碼添加到你項目的引導文件中:
require 'vendor/autoload.php';
現在我們就可以使用 monolog 了

如何使用Composer遇到過相同的問題, 我的解決方案是在 `.gitignore` 文件里面把 `composer.lock` 這一行去掉, 也就是說把 `composer.lock` 文件也加入版本控制.

這樣做有以下好處:

讓參與項目開發的成員使用這些 package 的同一版本, 減少分歧;
在生產環境下, 使用命令 `composer install` 可以確保跟開發的時候使用了統一的版本, 減少不必要的變數;
跟蹤當前項目使用所有 `package` 的版本, 當執行 `composer update` 出現問題時, 可以利用 Git 定位到出問題的 package, 匹對下版本, 接下來就可以做如: 在 composer.json 里面寫死版本等的解決動作了.
注意: 這里說下 composer 的機制, 當 `composer.lock` 文件存在的時候, 執行 `composer install` 命令時, composer 會更新按照 `composer.lock` 里的 package 指定版本進行安裝, 如果是執行 `composer update` 的話, 會更新 `package` 版本, 并更新 `composer.lock` 文件.
最后一條好處尤其重要, 設想如果是在沒有版本控制 `composer.lock` 文件的情況下, 一出現問題, 那就直接瞎眼了.

thinkphp應用怎么通過composer加載第三方庫直接在入口文件中包含composer的autoload腳本Composer 是PHP的一個包依賴管理工具,類似Ruby中的RubyGems或者Node中的NPM,它并非官方,但現在已經非常流行 。此文并不介紹如何使用Composer,而是關注于它的autoload的內容吧 。舉例來說,假設我們的項目想要使用 monolog 這個日志工具,就需要在composer.json里告訴composer我們需要它:{"require": { "monolog/monolog": "1.*"}}之后執行:php composer.phar install好,現在安裝完了,該怎么使用呢?Composer自動生成了一個autoload文件,你只需要引用它require '/path/to/vendor/autoload.php';然后就可以非常方便的去使用第三方的類庫了,是不是感覺很棒??!峨s諼頤切枰膍onolog,就可以這樣用了:use Monolog\Logger;use Monolog\Handler\StreamHandler;// create a log channel$log = new Logger('name');$log->pushHandler(new StreamHandler('/path/to/log/log_name.log', Logger::WARNING));// add records to the log$log->addWarning('Foo');$log->addError('Bar');在這個過程中 , Composer做了什么呢?它生成了一個autoloader,再根據各個包自己的autoload配置,從而幫我們進行自動加載的工作 。(如果對autoload這部分內容不太了解,可以看我之前的 一篇文章)接下來讓我們看看Composer是怎么做的吧 。對于第三方包的自動加載 , Composer提供了四種方式的支持,分別是 PSR-0和PSR-4的自動加載(我的一篇文章也有介紹過它們) , 生成class-map,和直接包含files的方式 。PSR-4是composer推薦使用的一種方式,因為它更易使用并能帶來更簡潔的目錄結構 。在composer.json里是這樣進行配置的:{ "autoload": {"psr-4": {"Foo\\": "src/",} }}key和value就定義出了namespace以及到相應path的映射 。按照PSR-4的規則,當試圖自動加載 "Foo\\Bar\\Baz" 這個class時 , 會去尋找 "src/Bar/Baz.php" 這個文件,如果它存在則進行加載 。注意, "Foo\\"并沒有出現在文件路徑中 , 這是與PSR-0不同的一點,如果PSR-0有此配置,那么會去尋找"src/Foo/Bar/Baz.php"這個文件 。另外注意PSR-4和PSR-0的配置里 , "Foo\\"結尾的命名空間分隔符必須加上并且進行轉義,以防出現"Foo"匹配到了"FooBar"這樣的意外發生 。在composer安裝或更新完之后 , psr-4的配置換被轉換成namespace為key,dir path為value的Map的形式,并寫入生成的 vendor/composer/autoload_psr4.php 文件之中 。{ "autoload": {"psr-0": {"Foo\\": "src/",} }}最終這個配置也以Map的形式寫入生成的vendor/composer/autoload_namespaces.php文件之中 。Class-map方式,則是通過配置指定的目錄或文件,然后在Composer安裝或更新時,它會掃描指定目錄下以.php或.inc結尾的文件中的class,生成class到指定file path的映射,并加入新生成的 vendor/composer/autoload_classmap.php 文件中 ,  。{ "autoload": {"classmap": ["src/", "lib/", "Something.php"] }}例如src/下有一個BaseController類,那么在autoload_classmap.php文件中,就會生成這樣的配置:'BaseController' => $baseDir . '/src/BaseController.php'Files方式,就是手動指定供直接加載的文件 。比如說我們有一系列全局的helper functions,可以放到一個helper文件里然后直接進行加載{ "autoload": {"files": ["src/MyLibrary/functions.php"] }}它會生成一個array,包含這些配置中指定的files,再寫入新生成的vendor/composer/autoload_files.php文件中,以供autoloader直接進行加載 。下面來看看composer autoload的代碼吧<?php// autoload_real.php @generated by Composerclass ComposerAutoloaderInit73612b48e6c3d0de8d56e03dece61d11{ private static $loader; public static function loadClassLoader($class) {if ('Composer\Autoload\ClassLoader' === $class) {require __DIR__ . '/ClassLoader.php';} } public static function getLoader() {if (null !== self::$loader) {return self::$loader;}spl_autoload_register(array('ComposerAutoloaderInit73612b48e6c3d0de8d56e03dece61d11', 'loadClassLoader'), true, true);self::$loader = $loader = new \Composer\Autoload\ClassLoader();spl_autoload_unregister(array('ComposerAutoloaderInit73612b48e6c3d0de8d56e03dece61d11', 'loadClassLoader'));$vendorDir = dirname(__DIR__); //verdor第三方類庫提供者目錄$baseDir = dirname($vendorDir); //整個應用的目錄$includePaths = require __DIR__ . '/include_paths.php';array_push($includePaths, get_include_path());set_include_path(join(PATH_SEPARATOR, $includePaths));$map = require __DIR__ . '/autoload_namespaces.php';foreach ($map as $namespace => $path) {$loader->set($namespace, $path);}$map = require __DIR__ . '/autoload_psr4.php';foreach ($map as $namespace => $path) {$loader->setPsr4($namespace, $path);}$classMap = require __DIR__ . '/autoload_classmap.php';if ($classMap) {$loader->addClassMap($classMap);}$loader->register(true);$includeFiles = require __DIR__ . '/autoload_files.php';foreach ($includeFiles as $file) {composerRequire73612b48e6c3d0de8d56e03dece61d11($file);}return $loader; }}function composerRequire73612b48e6c3d0de8d56e03dece61d11($file){ require $file;}首先初始化ClassLoader類,然后依次用上面提到的4種加載方式來注冊/直接加載,ClassLoader的一些核心代碼如下:/** * @param array $classMap Class to filename map */public function addClassMap(array $classMap){ if ($this->classMap) {$this->classMap = array_merge($this->classMap, $classMap); } else {$this->classMap = $classMap; }}/** * Registers a set of PSR-0 directories for a given prefix, * replacing any others previously set for this prefix. * * @param string$prefix The prefix * @param array|string $paths The PSR-0 base directories */public function set($prefix, $paths){ if (!$prefix) {$this->fallbackDirsPsr0 = (array) $paths; } else {$this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; }}/** * Registers a set of PSR-4 directories for a given namespace, * replacing any others previously set for this namespace. * * @param string$prefix The prefix/namespace, with trailing '\\' * @param array|string $paths The PSR-4 base directories * * @throws \InvalidArgumentException */public function setPsr4($prefix, $paths){ if (!$prefix) {$this->fallbackDirsPsr4 = (array) $paths; } else {$length = strlen($prefix);if ('\\' !== $prefix[$length - 1]) {throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");}$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;$this->prefixDirsPsr4[$prefix] = (array) $paths; }}/** * Registers this instance as an autoloader. * * @param bool $prepend Whether to prepend the autoloader or not */public function register($prepend = false){ spl_autoload_register(array($this, 'loadClass'), true, $prepend);}/** * Loads the given class or interface. * * @param string $class The name of the class * @return bool|null True if loaded, null otherwise */public function loadClass($class){ if ($file = $this->findFile($class)) {includeFile($file);return true; }}/** * Finds the path to the file where the class is defined. * * @param string $class The name of the class * * @return string|false The path if found, false otherwise */public function findFile($class){ //這是PHP5.3.0 - 5.3.2的一個bug 詳見https://bugs.php.net/50731 if ('\\' == $class[0]) {$class = substr($class, 1); } // class map 方式的查找 if (isset($this->classMap[$class])) {return $this->classMap[$class]; } //psr-0/4方式的查找 $file = $this->findFileWithExtension($class, '.php'); // Search for Hack files if we are running on HHVM if ($file === null && defined('HHVM_VERSION')) {$file = $this->findFileWithExtension($class, '.hh'); } if ($file === null) {// Remember that this class does not exist.return $this->classMap[$class] = false; } return $file;}private function findFileWithExtension($class, $ext){ // PSR-4 lookup $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; $first = $class[0]; if (isset($this->prefixLengthsPsr4[$first])) {foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {if (0 === strpos($class, $prefix)) {foreach ($this->prefixDirsPsr4[$prefix] as $dir) {if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {return $file;}}}} } // PSR-4 fallback dirs foreach ($this->fallbackDirsPsr4 as $dir) {if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {return $file;} } // PSR-0 lookup if (false !== $pos = strrpos($class, '\\')) {// namespaced class name$logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1). strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); } else {// PEAR-like class name$logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; } if (isset($this->prefixesPsr0[$first])) {foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {if (0 === strpos($class, $prefix)) {foreach ($dirs as $dir) {if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {return $file;}}}} } // PSR-0 fallback dirs foreach ($this->fallbackDirsPsr0 as $dir) {if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {return $file;} } // PSR-0 include paths. if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {return $file; }}/*** Scope isolated include.** Prevents access to $this/self from included files.*/function includeFile($file){include $file;
如何創建一個自己的 Composer/Packagist 包如何創建一個自己的 Composer/Packagist 包首先讓我們踏著歡快的腳步去Github創建一個新庫 , 這里取名 composer-car , 又歡快的將它克隆到本地:git clone https://github.com/GeHou/composer-car.git cd composer-car這個composer-car文件夾就是你的包的root目錄了,你只需要記住composer.json在包的哪個目錄下面,一般那就是包的root目錄了 。什么?做包子的工作臺?這么理解呢也是可以的,不過同學能先收收你的口水么 ?,F在我們還沒有composer.json文件,你可以根據composer文檔生成并編輯它,當然composer貼心的為我們準備了命令行 , look:?-> composer init Welcome to the Composer config generator This command will guide you through creating your composer.json config. Package name (/) [hou/composer-car]: 這里填寫/的信息Description []: 包的描述Author [GeHou ]: 作者信息Minimum Stability []: 最低穩定版本License []: 授權協議 Define your dependencies. Would you like to define your dependencies (require) interactively [yes]? noWould you like to define your dev dependencies (require-dev) interactively [yes]? no {"name": "hou/composer-car","description": "In order to study composer","license": "MIT","authors": [{"name": "GeHou","email": "***@gmail.com"}],"minimum-stability": "dev","require": {}} Do you confirm generation [yes]? yesWould you like the vendor directory added to your .gitignore [yes]? yes雖然經過以上的一番掙扎生成了composer.json文件,不過我們還得往里面加點東西 。使用你熟悉的編輯器打開composer.json文件修改至如下:?{"name": "hou/composer-car","description": "In order to study composer","license": "MIT","authors": [{"name": "GeHou","email": "***@gmail.com"}],"minimum-stability": "dev","require": {"php": ">=5.3.0"},"autoload": {"psr-4": {"Ford\\Escape\\": "src/Ford/Escape","Ford\\Fusion\\": "src/Ford/Fusion","Ford\\Focus\\": "src/Ford/Focus","Ford\\Fiesta\\": "src/Ford/Fiesta"}}}細心的小伙伴可能已經認出了福特的商標(Ford),這說明我們都是同道中人,你一定也很喜歡汽車,對吧對吧? :-)我們登陸一下福特的網站看看都有哪些熱銷車型,嗯嗯分別有ESCAPE、FUSION、FOCUS、FIESTA,中文名稱分別是翼虎、蒙迪歐、福克斯、嘉年華,嘉年華ST我的夢想啊~~~ 好了好了,那位看官放下你手里的板磚,我承認一說到汽車就會滔滔不絕 , 下面我們把水分擠出去繼續講解 。根據上面的命名空間和目錄的映射關系,包的結構現在應該是下面這個樣子:?composer-car- src- - Ford- - - Escape- - - - Escape2013.php- - - Fiesta- - - - Fiesta2013.php- - - Focus- - - - Focus2013.php- - - Fusion- - - - Fusion2013.php- .gitignore- composer.json- README.mdEscape2013.php:<?php namespace Ford\Escape; class Escape2013{public static function info(){echo "This is Ford Escape2013!
";}}Fiesta2013.php:<?php namespace Ford\Fiesta; class Fiesta2013{public static function info(){echo "This is Ford Fiesta2013!
";}}Focus2013.php:?<?php namespace Ford\Focus; class Focus2013{public static function info(){echo "This is Ford Focus2013!
";}}Fusion2013.php:<?php namespace Ford\Fusion; class Fusion2013{public static function info(){echo "This is Ford Fusion2013!
";}}以上都梳理完畢后,需要安裝composer來測試我們的包是否可以正常工作,安裝它很簡單在包的root目錄下install即可:?1composer install閃過幾行神秘的提示之后即安裝完畢,此時會在vendor/composer/autoload_psr4.php中生成命名空間和目錄的映射關系,被包在一個數組中: array($baseDir . '/src/Ford/Fusion'),'Ford\\Focus\\' => array($baseDir . '/src/Ford/Focus'),'Ford\\Fiesta\\' => array($baseDir . '/src/Ford/Fiesta'),'Ford\\Escape\\' => array($baseDir . '/src/Ford/Escape'),);如果發布成packagist包然后進行安裝的話,到時候這里就不是$baseDir了而是$vendorDir 。然后我們新建一個測試文件show.php,用以下內容填充它:<?php require 'vendor/autoload.php'; use Ford\Escape as Escape;use Ford\Fiesta as Fiesta;use Ford\Focus as Focus;use Ford\Fusion as Fusion; echo Escape\Escape2013::info();echo Fiesta\Fiesta2013::info();echo Focus\Focus2013::info();echo Fusion\Fusion2013::info();打開瀏覽器敲入 http://foo.com/composer-car/show.php (foo.com是我的本地測試域名,請替換成小伙伴自己的) 。瀏覽器上依次輸出了:This is Ford Escape2013!This is Ford Fiesta2013!This is Ford Focus2013!This is Ford Fusion2013!是不是有點小激動呢?別急,別一副作鳥獸散的樣子,還有發布的流程呢?不過你要是真的急著wc或者覺得教程too simple , 侯哥是不會讓你撿肥皂的 。首先作為調試代碼的部分我們是不需要push到github上的,所以將show.php打入冷宮 , 編輯.gitignore文件,在末尾加入show.php 。這個時候有些小伙伴可能會疑惑了,為什么上面還有個/vendor/ , 記得我們init包的時候回答過一個問題么??1Would you like the vendor directory added to your .gitignore [yes]? yes嗯嗯,你懂了吧?
composer 中國鏡像怎么安裝Composer
http://www.ddooo.com/softdown/94966.htm
1.解壓下載的壓縮包,找到“Composer-Setup.exe”安裝程序 , 雙擊運行,進入安裝界面,點擊"next” 。

2.選擇自己安裝的php.exe,composer將會為你檢查php配置和一些其他的設置 。

3.代理服務器設置,這里小編沒有用代理服務器,直接點擊“next” 。

4.很快就安裝好了,點擊“finish”退出安裝界面 。

5.打開CMD,輸入composer , 出現下圖所示界面則表示安裝成功了

composer 中國鏡像發生問題怎么辦in which you demand my assistanceave in m

mac composer 怎么查看是否安裝成功window下: Linux下: #!/bin/bash #檢查是否已經安裝 rpm -qa | grep python #查版本 python #最好是重新安裝 Python推薦版本( >= v2.5.0 & < 3.0.0 ) , 否則影響nodejs運行 #進入安裝目錄 cd /usr/local/ #刪除原有安裝 rm -rf node rm -rf n...

如何查看composer安裝路徑 , 全局使用composercomposer安裝后怎么找不到它的文件安裝路徑
CentOS 7下安裝Composer
安裝Composer
1、將composer.phar下載到項目中
使用curl -sS下載Composer 的二進制文件,是一個 PHAR 包(PHP 的歸檔)
2、可以通過 --install-dir 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑):curl -sS

3、如果把composer.phar放在系統的 PATH 目錄中,就能在全局訪問composer.phar 。在類Unix系統中,你甚至可以在使用時不加 php 前綴 ??梢詧绦羞@些命令讓 composer 在你的系統中進行全局調用:
#mv composer.phar /usr/local/bin/composer
現在只需要運行 composer 命令就可以使用 Composer 而不需要輸入 php composer.phar 。
4、檢查 Composer 是否正常工作,只需要通過 php 來執行 PHAR:php composer.phar這將返回給你一個可執行的命令列表 。

使用 Composer
要在項目中使用 Composer,只需要一個 composer.json 文件 。該文件包含了項目的依賴和其它的一些元數據 ?,F在使用 Composer 來安裝項目的依賴 。
1、創建 composer.json 文件
在當前目錄下創建 composer.json 文件,在 composer.json 文件中指定 require key 的值 。簡單的告訴 Composer 你的項目需要依賴哪些包 。
例如:
{"require": {"monolog/monolog": "1.0.*"} }
可以看到,require 需要一個 包名稱monolog/monolog映射到 包版本 1.0.*的對象 。包名稱由供應商名稱和其項目名稱構成 。
2、安裝依賴包
執行 install 命令獲取定義的依賴到本地項目:
php composer.phar install
如果你進行了全局安裝,并且沒有 phar 文件在當前目錄,使用下面的命令代替:
composer install
這將會找到 monolog/monolog 的最新版本,并將它下載到 vendor 目錄 。這是一個慣例把第三方的代碼到一個指定的目錄 vendor 。如果是 monolog 將會創建 vendor/monolog/monolog 目錄 。
注意: install 命令將創建一個 composer.lock 文件到你項目的根目錄中 。

3、自動加載
除了庫的下載,Composer 還準備了一個自動加載文件,它可以加載 Composer 下載的庫中所有的類文件 。使用它,你只需要將下面這行代碼添加到你項目的引導文件中:
require 'vendor/autoload.php';
現在我們就可以使用 monolog 了

如何查看composer安裝路徑,全局使用composer1、將composer.phar下載到項目中
使用curl -sS下載Composer 的二進制文件,是一個 PHAR 包(PHP 的歸檔)
2、可以通過 --install-dir 選項指定 Composer 的安裝目錄(它可以是一個絕對或相對路徑):curl -sS

3、如果把composer.phar放在系統的 PATH 目錄中,就能在全局訪問composer.phar 。在類Unix系統中,你甚至可以在使用時不加 php 前綴 ??梢詧绦羞@些命令讓 composer 在你的系統中進行全局調用:
#mv composer.phar /usr/local/bin/composer

php composer怎么用Composer很好的解決了PHP的包管理和依賴問題,只需要import一個文件,Composer中管理的所有庫就會按需加載,而不需要每個import 。
先介紹一下Composer的安裝 。Composer的官方地址: https://getcomposer.org/
安裝
curl -sS https://getcomposer.org/installer | php

這樣在當前目錄下會下載一個composer.phar的文件,為了方便,我們可以重命名一下,并放到/usr/local/bin下 , 方便執行 。
mv composer.phar /usr/local/bin/composer

使用
一般我習慣把Composer放在/opt下 , 所以先創建一個Composer的目錄
mkdir /opt/composer

先下載一個KLogger , 一個寫日志的庫,本人比較喜歡 。
cd /opt/composer
composer require katzgrau/klogger:dev-master

這樣,KLogger就被下載下來了,使用很簡單,只需要引入一個文件 。
<?php

require '/opt/composer/vendor/autoload.php';

$logger = new Katzgrau\KLogger\Logger(__DIR__.'/logs');
...


KLogger可以使用了,我們在下載一個別的庫,Medoo:一個輕量級的數據庫框架 。同樣的方式來下載 。
cd /opt/composer
composer require catfan/Medoo

使用同理
<?php

require '/opt/composer/vendor/autoload.php';

$medoo = new medoo();

//繼續使用KLogger
$logger = new Katzgrau\KLogger\Logger(__DIR__.'/logs');
...


使用很簡單 , 只要引入了 vendor/autoload.php ,就可以自動引入用到庫,的確很酷 。
加速
如果發現composer執行起來很慢,可以考慮換個鏡像 。這里推薦一個日本的鏡像: http://composer-proxy.jp/。
執行
composer config -g -e

編輯后
{
"config": {}
,
"repositories": [
{ "packagist": false },
{
"type": "composer",
"url": "http://composer-proxy.jp/proxy/packagist"
}
]
}

如果發現composer長時間沒反應,可以在執行時候加入 -vvv 選項,可以輸出更多信息,方便查找問題 。
composer -vvv require ...

最后
PHP的 spl_autoload_register 可以很方便做按需引入,當 new 一個類沒發現的時候,就會觸發,然后我們自己按照規則來處理引入 。
一個簡單的例子
<?php

class ClassAutoloader
{
public function __construct()
{
spl_autoload_register(array($this, 'loader'));
}

public function loader($className)
{
$file = dirname(__FILE__) . '/' . $className . '.php';
if (is_file($file)) {
require $file;
}
}
}

$autoloader = new ClassAutoloader();

php composer怎么使用官方有教程??,策€揖醯謎飧霾惶糜?nbsp;, 畢竟php不像android那樣需要很多庫 。
php使用composer加載擴展 , 感覺就跟win10的應用商店似的,意義不大啊

thinkPHP5.0里面說的Composer到底是什么來的就是一個依賴管理工具,lavaral框架就是用composer,tp5有點模仿的意思

php中的composer.json怎么用composer.json是用來安裝laravel框架的,前提是你需要安裝laravel框架

composer 安裝 需要php環境么【composer】需要的 。
composer系統要求
運行 Composer 需要 PHP 5.3.2+ 以上版本 。一些敏感的 PHP 設置和編譯標志也是必須的 , 但對于任何不兼容項安裝程序都會拋出警告 。
我們將從包的來源直接安裝,而不是簡單的下載 zip 文件,你需要 git 、 svn 或者 hg  , 這取決于你載入的包所使用的版本管理系統 。
Composer 是多平臺的,我們努力使它在 Windows 、 Linux 以及 OSX 平臺上運行的同樣出色 。