手寫PHP API框架(二)之Composer的安裝使用

2023-02-10 22:01:08
上一篇《》文章中我們介紹了我們需要遵循的規範,這一文我們來介紹一下我們的專案中需要用到的一個依賴管理工具------Composer。

Composer 是 PHP 的一個依賴管理工具。它允許你申明專案所依賴的程式碼庫,它會在你的專案中為你安裝他們。

image

如果你是前端工程師,你應該用過npm;如果你是pyhton開發者,你應該用過pip,簡單說你可以這樣理解composer。

composer在小冊中可能經常會被提及,我們來學習一下安裝和常用命令。

安裝

  • Linux

composer的安裝比較簡單,不建議使用yum等管理包直接install,因為有可能會修改你的預設php版本。我們可以跳過以下方式安裝:

curl -sS | php

mv composer.phar /usr/local/bin/composer

  • Windows

下載並且執行 Composer-Setup.exe,它將安裝最新版本的 Composer ,建議加入系統的環境變數,這樣你就可以在任何目錄下直接使用 composer 命令。

修改映象源

預設映象源國內下載比較慢,建議更換映象源

composer config -g repo.packagist composer

也可以使用阿里的映象源(推薦)

composer config -g repo.packagist composer

config -g/--global 表示全域性設定

composer常用命令

  • init初始化

引數:--name: 包的名稱。--description: 包的描述。--author: 包的作者。--homepage: 包的主頁。--require: 需要依賴的其它包,必須要有一個版本約束。並且應該遵循 foo/bar:1.0.0 這樣的格式。--require-dev: 開發版的依賴包,內容格式與 --require 相同。--stability (-s): minimum-stability 欄位的值。複製程式碼
登入後複製
  • require增加

require 命令增加新的依賴包到當前目錄的 composer.json 檔案中,並可以指定版本。

composer require vendor/package:2.* vendor/package2:dev-master

install安裝

install 命令從當前目錄讀取 composer.json 檔案,處理了依賴關係,並把其安裝到 vendor 目錄下。

如果當前目錄下存在 composer.lock 檔案,它會從此檔案讀取依賴版本,而不是根據 composer.json 檔案去獲取依賴。這確保了該庫的每個使用者都能得到相同的依賴版本。

如果沒有 composer.lock 檔案,composer 將在處理完依賴關係後建立它。

你可以簡單把composer.lock理解為擴充套件庫的快取。

update更新

為了獲取依賴的最新版本,並且更新 composer.lock 檔案,你應該使用 update 命令。

composer update

這將解決專案的所有依賴,並將確切的版本號寫入 composer.lock。

如果你只是想更新幾個包,你可以像這樣分別列出它們:

composer update vendor/package vendor/package2

==注意==:update命令會更新composer.json裡限定版本的最新依賴。 比如你寫的是"monolog/monolog": "1.*",update命令可能會把1.0更新為1.2版本,但不會將1.0更新為2.0。所以使用時需要注意。

search

search 命令允許你為當前專案搜尋依賴包,通常它只搜尋 packagist.org 上的包,你可以簡單的輸入你的搜尋條件。

show

列出所有可用的軟體包,你可以使用 show 命令。

composer-show

dump-autoload

列印自動載入索引,某些情況下你需要更新 autoloader,例如在你的包中加入了一個新的類。你可以使用 dump-autoload 來完成,而不必執行 install 或 update 命令。

此外,它可以列印一個優化過的,符合 PSR-0/4 規範的類的索引,這也是出於對效能的可考慮。在大型的應用中會有許多類檔案,而 autoloader 會佔用每個請求的很大一部分時間,使用 classmaps 或許在開發時不太方便,但它在保證效能的前提下,仍然可以獲得 PSR-0/4 規範帶來的便利。


好了,這一節我們介紹了composer的安裝和常用命令。我們後面可以將框架整合到一個composer包,分享給其他開發同學使用。

推薦學習:《》

以上就是手寫PHP API框架(二)之Composer的安裝使用的詳細內容,更多請關注TW511.COM其它相關文章!