首頁  >  文章  >  後端開發  >  手寫PHP API框架(二)之Composer的安裝使用

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

藏色散人
藏色散人轉載
2023-02-10 10:36:373685瀏覽
上一篇《手寫PHP API框架(一)之PSR規範》文章中我們介紹了我們需要遵循的規範,這一文我們來介紹一下我們的專案中需要用到的一個依賴管理工具------Composer。

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

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

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

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

安裝

  • Linux

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

curl -sS getcomposer.org/installer | php

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

  • Windows

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

修改鏡像來源

預設鏡像來源國內下載比較慢,建議更換鏡像來源

composer config -g repo.packagist composer packagist.phpcomposer .com

也可以使用阿里的鏡像來源(推薦)

composer config -g repo.packagist composer mirrors.aliyun.com/ 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 指令。

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

也可以點選查看更多composer套件

dump-autoload

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

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

更composer多指令請點選查看


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

推薦學習:《PHP影片教學

以上是手寫PHP API框架(二)之Composer的安裝使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:juejin.im。如有侵權,請聯絡admin@php.cn刪除