1. 切換資源庫到國內鏡像。此操作類似于NPM切換資源包到CNPM(淘寶鏡像),旨在解決國外網絡被墻等問題。
* 全局:composer config -g repo.packagist composer https://packagist.phpcomposer.com
* 單項目(進入項目目錄再執行命令): composer config repo.packagist composer https://packagist.phpcomposer.com
2. 命令列表 composer list 和composer --help
3. 初始化init
```composer init```
初始化參數列表:
* --name: 包的名稱。
* --description: 包的描述。
* --author: 包的作者。
* --homepage: 包的主頁。
* --require: 需要依賴的其它包,必須要有一個版本約束。并且應該遵循 foo/bar:1.0.0 這樣的格式。
* --require-dev: 開發版的依賴包,內容格式與 --require 相同。
* --stability (-s): minimum-stability 字段的值。
4. 安裝install
```composer install```
安裝參數列表:
* --prefer-source: 下載包的方式有兩種: source 和 dist。對于穩定版本 composer 將默認使用 dist 方式。而 source 表示版本控制源 。如果 --prefer-source 是被啟用的,composer 將從 source 安裝(如果有的話)。如果想要使用一個 bugfix 到你的項目,這是非常有用的。并且可以直接從本地的版本庫直接獲取依賴關系。
* --prefer-dist: 與 --prefer-source 相反,composer 將盡可能的從 dist 獲取,這將大幅度的加快在 build servers 上的安裝。這也是一個回避 git 問題的途徑,如果你不清楚如何正確的設置。
* --dry-run: 如果你只是想演示而并非實際安裝一個包,你可以運行 --dry-run 命令,它將模擬安裝并顯示將會發生什么。
* --dev: 安裝 require-dev 字段中列出的包(這是一個默認值)。
* --no-dev: 跳過 require-dev 字段中列出的包。
* --no-scripts: 跳過 composer.json 文件中定義的腳本。
* --no-plugins: 關閉 plugins。
* --no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
* --optimize-autoloader (-o): 轉換 PSR-0/4 autoloading 到 classmap 可以獲得更快的加載支持。特別是在生產環境下建議這么做,但由于運行需要一些時間,因此并沒有作為默認值。
5. 更新 update
* 更新項目的所有依賴,并將確切的版本號寫入 composer.lock。```composer update```
* 只更新個別包,可以列出它們: ```composer update vendor/package vendor/package2```
* 使用通配符進行批量更新:```composer update vendor/* ```
更新-參數:
* --prefer-source: 當有可用的包時,從 source 安裝。
* --prefer-dist: 當有可用的包時,從 dist 安裝。
* --dry-run: 模擬命令,并沒有做實際的操作。
* --dev: 安裝 require-dev 字段中列出的包(這是一個默認值)。
* --no-dev: 跳過 require-dev 字段中列出的包。
* --no-scripts: 跳過 composer.json 文件中定義的腳本。
* --no-plugins: 關閉 plugins。
* --no-progress: 移除進度信息,這可以避免一些不處理換行的終端或腳本出現混亂的顯示。
* --optimize-autoloader (-o): 轉換 PSR-0/4 autoloading 到 classmap 可以獲得更快的加載支持。特別是在生產環境下建議這么做,但由于運行需要一些時間,因此并沒有作為默認值。
* --lock: 僅更新 lock 文件的 hash,取消有關 lock 文件過時的警告。
* --with-dependencies 同時更新白名單內包的依賴關系,這將進行遞歸更新。
6. 展示包詳細內容
```composer show monolog/monolog 1.2.2```顯示monolog包1.2.2詳細內容,版本號可指定特定版本活省略
展示-參數:
* --installed (-i): 列出已安裝的依賴包。
* --platform (-p): 僅列出平臺軟件包(PHP 與它的擴展)。
* --self (-s): 僅列出當前項目信息。
7.自定義軟件包:示例如下:
"repositories": [
{
"type": "git",
"url": "https://git.oschina.net/wzhec/Tongcheng_OpenAPI.git"
},
{
"type": "git",
"url": "https://git.oschina.net/wzhec/Alidayu_sms.git"
}
],
8.自動加載:支持psr-4,psr-0,classmap等方式
"autoload": {
"psr-4": {
"WZH\\ALIDAYU\\":"src",
"WZH\\ALIDAYU\\library\\":"library"
}
}
- 說明
- PHP
- 數組操作
- file操作的常用方法
- PHP字符串輸出之Heredoc說明
- require(_once)和include(_once)的理解
- file_get_contents和curl
- PHP的json問題
- PHP提高效率的幾點
- PHP/異步任務隊列處理
- HTTP_AUTHORIZATION
- php中 intval和string的一些轉換問題
- 變量在 PHP7 內部的實現
- 關于exit和die
- php獲取微秒
- php高性能日志擴展seaslog的使用
- Curl使用說明
- echo的數據自動增加換行或其他
- php-memcache
- 根據18位數校驗前17位身份證號是否正確
- 將一個老項目升級到php7
- ord獲取ASCII碼
- 框架
- thinkphp5
- THINKPHP5常見問題
- Laravel5學習筆記
- homestead總結
- easywechat學習筆記
- wechat公眾號
- 獲取用戶信息的實現方式
- 前端
- HTML
- CSS
- 偽類和偽元素的區別
- Bootstrap使用
- Javascript
- Javascript梳理總結
- 巧用history.pushState無刷新改變頁面url
- jquery日期時間選擇器組件datepicker的使用說明
- 基本操作
- 比較
- 后端/Nodejs
- 多nodejs版本管理
- 小功能
- URLAPI
- 二維碼轉換
- 地圖URL直接實現導航
- 字體生成
- 網址長短互轉
- 百度短網址
- Fiddle模擬測試百度短網址api
- Composer備忘錄
- composer安裝配置
- Composer 錯誤集錦
- Composer使用自己的庫
- GIT簡單操作命令
- Git記住密碼
- git 顯示錯誤詳情和請求信息
- 工具軟件
- PHPStorm
- VI簡單操作命令
- ATOM
- browser提示shockwave false加載失敗
- Cmder使用說明
- Windows軟件總結
- 瀏覽器插件
- 支付
- 微信支付
- 支付寶
- 銀聯支付
- Ping++
- Beecloud支付
- Map
- 百度地圖BaiduMap
- RESTfulAPI設計實踐
- HTTP
- GET/POST 的請求大小
- 常見狀態碼說明
- Ubuntu
- 命令行中的>>和>的區別
- 筆記
- 正則
- Hybrid的使用記錄
- H5+和mui
- HTML5+和mui使用
- APP開發過程中藍牙問題總結
- Cordova的使用
- 服務器
- URL重寫
- 目錄限制訪問
- 軟鏈接和硬鏈接
- 票務系統對接資料和總結
- qunar去哪兒門票對接
- qunar對接case介紹及錯誤代碼
- tuniu門票對接總結
- 途牛小結
- 聯合票務對接途牛文檔說明
- 途牛簽名流程
- meituan美團
- 大眾點評
- 聯合票務
- 安卓使用技巧
- 安卓清理電池信息
- 安卓6.0使用時發現的問題
- 數據庫
- 數據庫mysql
- 分頁數據優化
- 手機號用不到索引的問題分析
- mysql配置的localhost和127.0.0.1的區別
- mysql5.5升級mysql5.7
- 數據庫MongoDB
- Redis使用說明
- phpredis使用說明
- 環境變量
- Twig使用
- 經典的文章
- 用超人的故事講解 IoC(控制反轉) 和 DI(依賴注入)