composer在php中的使用
以thinkphp3.2框架為例,簡單介紹一下composer的使用:
1、首先需要安裝composer
下載 Composer
安裝前請務必確保已經正確安裝了 PHP。開啟命令列視窗並執行
php -v
檢視是否正確輸出版本號。
開啟命令列並依次執行下列命令安裝最新版本的 Composer:
複製
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
複製
php composer-setup.php
複製
php -r "unlink('composer-setup.php');"
執行第一條命令下載下來的 composer-setup.php
指令碼將簡單地檢測 php.ini
中的引數設定,如果某些引數未正確設定則會給出警告;然後下載最新版本的 composer.phar
檔案到當前目錄。
上述 3 條命令的作用依次是:
- 下載安裝指令碼 -
composer-setup.php
- 到當前目錄。 - 執行安裝過程。
- 刪除安裝指令碼。
Packagist 映象使用方法
還沒安裝 Composer 嗎?請往下看
如何安裝 Composer 。
映象用法
有兩種方式啟用本映象服務:
- 系統全域性配置: 即將配置資訊新增到 Composer 的全域性配置檔案
config.json
中。見“方法一” - 單個專案配置: 將配置資訊新增到某個專案的
composer.json
檔案中。見“方法二”
方法一: 修改 composer 的全域性配置檔案(推薦方式)
開啟命令列視窗(windows使用者)或控制檯(Linux、Mac 使用者)並執行如下命令:
複製
composer config -g repo.packagist composer https://packagist.phpcomposer.com
方法二: 修改當前專案的 composer.json
配置檔案:
開啟命令列視窗(windows使用者)或控制檯(Linux、Mac 使用者),進入你的專案的根目錄(也就是 composer.json
檔案所在目錄),執行如下命令:
複製
composer config repo.packagist composer https://packagist.phpcomposer.com
上述命令將會在當前專案中的 composer.json
檔案的末尾自動新增映象的配置資訊(你也可以自己手工新增):
複製
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}
以 laravel 專案的 composer.json
配置檔案為例,執行上述命令後如下所示(注意最後幾行):
複製
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*"
},
"config": {
"preferred-install": "dist"
},
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}
}
進入到PHP的安裝檔案,我的PHPstudy中php位置為:D:\phpStudy\PHPTutorial\php\php-5.6.27-nts,(這裡需要配置環境變數:配置完後需要將composer.phar複製到PHP安裝檔案內)
cmd進入到命令列內,進入到你的專案中,如我的:
安裝元件
在 ThinkPHP 專案中安裝一個錯誤與異常的元件 Whoops,地址:https://packagist.org/packages/filp/whoops
專案下的 composer require filp/whoops 就是該元件在 Composer 下的安裝命令。
該元件的作用是如果 PHP 指令碼中觸發了錯誤和沒有捕獲的異常,則出現 Whoops 的診斷頁面。
在命令提示符下進入專案目錄:
執行命令 composer require filp/whoops
看到以上提示說明元件安裝完成,此時檢視專案目錄,發現在根目錄下會多一個 vendor 目錄:
元件 Whoops 就位於 Vendor/filp 目錄下。
此時再看根目錄下 composer.json 檔案:
專案的依賴元件中多了 Whoops 元件,版本是 2.1
測試元件
在 Application/Home/Controller 下建立 TestController.class.php 檔案。首先測試系統捕獲異常時的輸出:
按 Ctrl+C 複製程式碼
按 Ctrl+C 複製程式碼
輸出:
然後測試不載入 Whoops 元件,指令碼遇到未捕獲異常時的提示:
按 Ctrl+C 複製程式碼
按 Ctrl+C 複製程式碼
訪問:http://127.0.0.3/php/composer/thinkphp/Home/Test
輸出:
最後測試載入了 Whoops 元件,並且指令碼遇到未捕獲的異常時的輸出:
按 Ctrl+C 複製程式碼
按 Ctrl+C 複製程式碼
輸出:
測試結束。
附
安裝元件的另一種方式
在 composer.json 檔案中加入元件包:
例如新增元件 monolog
然後使用 composer update 命令下載元件
此時元件已經被安裝到了專案中: