」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 使用“composer outdated”尋找過時的 Composer 依賴項

使用“composer outdated”尋找過時的 Composer 依賴項

發佈於2024-08-27
瀏覽:676

介紹

建置 PHP Web 應用程式時,保持相依性最新並防止安裝具有已知安全漏洞的 Composer 相依性非常重要。這可以幫助您確保您的應用程式是安全的,並且您可以從最新的功能和錯誤修復中受益。

但是,在一般日常開發任務之間的依賴關係更新上確實很容易落後。值得慶幸的是,Composer 為我們提供了一個方便的工具,您可以使用它來概述您正在使用的軟體包有可用的更新。

在這篇 Quickfire 文章中,我們將快速瀏覽 Composer outdated 指令,以協助您找到 PHP 專案中過時的套件。

「作曲家過時」指令

您可以執行 Composer outdated 指令來尋找哪些依賴項有可用更新。

您可以透過在 PHP 專案的根目錄中執行以下命令來執行該命令:

composer outdated  

預設情況下,該命令將顯示具有可用更新版本的軟體包以及您正在使用的當前版本。依賴項分為兩個單獨的類別:

  • 直接依賴項 - 這些是您在composer.json 檔案中所需的套件。
  • 傳遞依賴項 - 這些是您的直接依賴項所需的套件,但不是您直接需要的。

如果依賴項是次要版本或修補程式版本,Composer 將以紅色顯示新版本。如果依賴項的主要版本可用,新版本將以黃色顯示。

以下是執行composer outdated 指令時可能看到的輸出範例:

Find Outdated Composer Dependencies Using \

正如我們在圖像中看到的,composer outdated 命令已顯示具有可用更新版本的軟體包。

因此,在上面的範例中,我們可以看到我們在composer.json 檔案中所需的 phpunit/phpunit 依賴項目前位於 10.5.17,並且有一個主要版本升級到 11.3.1。

我們還可以看到我們有一些傳遞依賴項,這些依賴項具有可用的主要、次要和補丁升級。

命令選項

composer outdated 指令有幾個選項可用於過濾輸出:

- 全部

您可以使用 --all 選項顯示專案中的所有依賴項,包括最新的依賴項。如果您想在一個地方查看專案中的所有依賴項並大致了解哪些套件需要更新以及哪些套件正在運行最新版本,這會很有用。

您可以像這樣使用它:

composer outdated --all

輸出可能如下圖所示:

Find Outdated Composer Dependencies Using \

如果版本號碼顯示為綠色,則表示我們目前安裝的版本是目前最新版本。作為範例,我們可以看到 jonpurvis/profanify 依賴項是最新的。

順便說一句,我實際上有一篇文章介紹如何在 PHP 專案中使用 Profanify 來防止程式碼中出現髒話。您可以在這裡查看:Profanify:防止 PHP 程式碼庫中的髒話

- 直接的

您可以使用 --direct 選項僅顯示專案中的直接依賴項。

如果您只想查看composer.json 檔案中直接需要的套件,這可能很有用。

您可以像這樣使用它:

composer outdated --direct

輸出可能如下圖所示:

Find Outdated Composer Dependencies Using \

--僅主要

如果您只想查看具有可用主要版本的軟體包,可以使用 --major-only 選項。

您可以像這樣使用它:

composer outdated --major-only

--僅次要

如果您只想查看具有可用次要版本的軟體包,可以使用 --minor-only 選項。

您可以像這樣使用它:

composer outdated --minor-only

--僅補丁

如果您只想查看有可用修補程式版本的軟體包,可以使用 --patch-only 選項。

您可以像這樣使用它:

composer outdated --patch-only

結論

希望本文能讓您快速了解 Composer 過時指令以及如何使用它來尋找 PHP 專案中過時的套件。

如果您喜歡閱讀這篇文章,您可能有興趣查看我的 220 頁電子書“Battle Ready Laravel”,其中更深入地涵蓋了類似的主題。

或者,您可能想查看我的另一本 440 頁電子書“Consuming APIs in Laravel”,它教您如何使用 Laravel 來使用來自其他服務的 API。

如果您有興趣在我每次發布新帖子時獲得更新,請隨時訂閱我的時事通訊。

繼續打造精彩的東西! ?

版本聲明 本文轉載於:https://dev.to/ashallendesign/find-outdated-composer-dependencies-using-composer-outdated-2jhp?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • Python、Node js 和 PHP 中用於驗證碼識別的頂層模組
    Python、Node js 和 PHP 中用於驗證碼識別的頂層模組
    在我们的自动化时代,大多数解决方案都可以免费找到,我现在不是在谈论解决数学问题,而是稍微复杂的任务,例如数据解析,和我们的例子一样,还有 recapcha 识别。但如何找到一个好的模块呢?毕竟,随着技术的发展,每个人都得到了它,无论是认真的开发人员还是彻头彻尾的骗子。 我分析了验证码识别模块的市场,...
    程式設計 發佈於2024-11-06
  • 以下是一些標題選項,重點關注問題格式和核心內容:

**選項 1(直接且簡潔):**

* **如何在 PHP 中有效率地循環多維數組?

**選項2
    以下是一些標題選項,重點關注問題格式和核心內容: **選項 1(直接且簡潔):** * **如何在 PHP 中有效率地循環多維數組? **選項2
    在 PHP 中循環多維數組多維數組可能是解析的一個挑戰,特別是在處理不同深度級別和非順序索引時。考慮一個保存事件資訊的數組,其中可以包含多個藝術家及其相應的鏈接,如下所示:array(2) { [1]=> array(3) { ["eventID"]...
    程式設計 發佈於2024-11-06
  • 透過 Linting 提高程式碼品質
    透過 Linting 提高程式碼品質
    Whenever I start a new project, one of the first things I do is put in place a code linter. For the uninitiated, linters analyze your project and call...
    程式設計 發佈於2024-11-06
  • 如何有效執行JavaScript中的回呼函數?
    如何有效執行JavaScript中的回呼函數?
    理解JavaScript 中回呼函數的本質在JavaScript 中,回呼函數提供了一種方便的機制,可以在另一個函數完成後執行一個函數它的執行。雖然概念很簡單,但回調的最佳實作有時可能不清楚。讓我們探討一個簡化的範例:var myCallBackExample = { myFirstFunc...
    程式設計 發佈於2024-11-06
  • Vue 框架簡介
    Vue 框架簡介
    What is Vue? from the Vue website Vue is a "progressive" JavaScript framework for building user interfaces. It works by build...
    程式設計 發佈於2024-11-06
  • 逃離戲劇:為什麼 HydePHP 是您的 WordPress 替代品
    逃離戲劇:為什麼 HydePHP 是您的 WordPress 替代品
    WordPress 戲劇 隨著 WordPress 生態系統面臨前所未有的混亂,許多開發人員和網站所有者正在重新考慮他們的平台選擇。最近 WordPress 共同創辦人 Matt Mullenweg 和 WP Engine 之間的衝突凸顯了 WordPress 社群內的控制、貢獻和...
    程式設計 發佈於2024-11-06
  • Go 中的並發模式;工作池和扇出/扇入
    Go 中的並發模式;工作池和扇出/扇入
    Go 以其卓越的並發模型而聞名,但許多開發人員只專注於 goroutine 和通道。然而,工作池和扇出/扇入等並發模式提供了真正的效率。 本文將介紹這些進階概念,幫助您最大限度地提高 Go 應用程式的吞吐量。 為什麼並發很重要 並發允許程式有效率地執行任務,特別是在處理 I/O ...
    程式設計 發佈於2024-11-06
  • 如何在 C++ 中將單一字元轉換為 std::string?
    如何在 C++ 中將單一字元轉換為 std::string?
    從單字建立字串從單一字元建立字串人們可能會遇到需要將表示為char 資料類型的單字轉換為std:: string。從字串中取得字元很簡單,只需在所需位置索引字串即可。然而,相反的過程需要不同的方法。 要從單字建立std::string,可以使用多種方法:char c = 34; std::strin...
    程式設計 發佈於2024-11-06
  • JavaScript 變數名稱中美元符號的含義是什麼?
    JavaScript 變數名稱中美元符號的含義是什麼?
    JavaScript 變數名稱中美元符號的意義在程式設計領域,命名約定的使用對於增強程式碼至關重要可讀性並遵循最佳實務。在 JavaScript 中,美元符號 ($) 通常會作為變數名稱的前綴出現,特別是引用 jQuery 物件的變數名稱。 美元符號的用途是什麼? 與流行的看法相反,JavaScri...
    程式設計 發佈於2024-11-06
  • 如何重新排列 CSS 網格佈局中的列以實現移動響應?
    如何重新排列 CSS 網格佈局中的列以實現移動響應?
    在CSS 網格佈局中重新排序列在CSS 網格佈局中,有多種技術可以修改列的順序以實現具體佈局。本問題探討了重新排列行動佈局列的可能性,例如將列移到底部,同時在桌面佈局上保持所需的列順序。 解決方案選項:grid-template-areas: 此屬性可讓您在網格內定義命名區域,然後將網格項目指派給這...
    程式設計 發佈於2024-11-06
  • Hacktoberfest 週線上拍賣系統
    Hacktoberfest 週線上拍賣系統
    概述 在 Hacktoberfest 的第三週,我決定為一個較小但有前途的專案做出貢獻:線上拍賣系統。儘管該專案仍處於早期階段,但它已經顯示出成長潛力,而且我看到了幫助改進其程式碼庫的機會。我的任務是透過減少冗餘程式碼和改進整體結構來重構項目,使其更具可維護性和可擴展性。 ...
    程式設計 發佈於2024-11-06
  • 如何使用“exception_ptr”在 C++ 執行緒之間傳播異常?
    如何使用“exception_ptr”在 C++ 執行緒之間傳播異常?
    在C 中的線程之間傳播異常當從主線程調用的函數生成多個線程時,就會出現在C 中的執行緒之間傳播異常的任務用於CPU 密集型工作的工作執行緒。挑戰在於處理工作執行緒上可能發生的異常並將其傳播回主執行緒以進行正確處理。 傳統方法一種常見方法是手動捕獲工作線程上的各種異常,記錄它們的詳細信息,然後在主線程...
    程式設計 發佈於2024-11-06
  • 如何使用 3D CSS 轉換來修復 Firefox 中的鋸齒狀邊緣?
    如何使用 3D CSS 轉換來修復 Firefox 中的鋸齒狀邊緣?
    使用3D CSS 變換時Firefox 中的鋸齒狀邊緣與Chrome 中使用CSS 變換時的鋸齒狀邊緣問題類似,Firefox 在3D 變換中也出現了這個問題。背面可見性作為 Chrome 中的潛在解決方案,在 Firefox 中被證明無效。 解決方案:要在Firefox 中緩解此問題,您可以實施以...
    程式設計 發佈於2024-11-06
  • 為什麼 PHP 的 mail() 函數會為電子郵件發送帶來挑戰?
    為什麼 PHP 的 mail() 函數會為電子郵件發送帶來挑戰?
    為什麼PHP 的mail() 函數達不到要求:限制和陷阱雖然PHP 提供了mail() 函數用於發送電子郵件,但它卻失敗了與專用庫或擴展相比較短。以下是與使用mail() 相關的缺點和限制的全面檢查:格式問題:mail() 可能會遇到以下問題:標題和內容格式,尤其是作業系統之間的換行差異。這些錯誤可...
    程式設計 發佈於2024-11-06
  • 使用 npyConverter 簡化 NumPy 檔案轉換
    使用 npyConverter 簡化 NumPy 檔案轉換
    如果您使用 NumPy 的 .npy 檔案並需要將其轉換為 .mat (MATLAB) 或 .csv 格式,npyConverter 就是適合您的工具!這個簡單的基於 GUI 的工具透過乾淨且用戶友好的介面提供 .npy 檔案的批量轉換。 主要特點 批次轉換:將目錄下所有.npy檔...
    程式設計 發佈於2024-11-06

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3