搜尋
首頁開發工具composer你生產環境的Composer是怎麼樣的?

下上由

你生產環境的Composer是怎麼樣的?composer 解析

如果大家比較急,請直接看到最後一條指令即可

composer 設定項目

特定的每個設定項目細節請參考 Composer 官網

設定清單

##ID##配置項目1#namedescriptionversiontype##安裝類型5keywords##6homepage專案首頁#7time版本發佈時間8license授權協定 9authors#作者#10##支援,取得專案支援的向相關資訊對象。 require#自動載入的套件##12在DEV下自動載入的套件13此清單中的套件與目前套件的這個版本衝突。它們將不允許同時被安裝14建議安裝的包,它們增強或能夠與當前包良好的工作。這些只是訊息,並顯示在依賴套件安裝完成之後,給你的用戶一個建議,他們可以添加更多的套件。 15#自動載入,分別有四種載入機制psr-4保留傳統,不建議使用17#定義目前包安裝的目標資料夾18安裝套件的時候透過穩定性過濾套件的默認行為, dev安裝套件的時候優先使用更穩定的套件版本, "prefer-stable": true#使用自訂的套件資源庫。預設 composer 只使用 packagist 作為套件的資源庫。透過指定資源庫,你可以從其他地方取得資源包。 21#設定參數,eg:process-timeout22Composer 讓你在安裝過程中的各個階段掛接腳本。 23#任意的,是供 scripts 使用的額外資料。 #該屬性用於標註一組應被視為二進位腳本的文件,他們會被軟連結到(config 物件中的)bin-dir 屬性所標註的目錄,以供其他依賴套件呼叫。 25這些選項在建立套件存檔時使用。 require
說明
包的名稱,它包括供應商名稱和項目名稱,使用/ 分隔。 2
#套件描述 3
版本 4
11
require-dev
conflict
suggest
autoload
psr-0 classmap file #16include-path
#target-dir
minimum-stability
alpha beta RC #stable 可選19prefer-stable
#20 repositories
config
vendor -dir scripts
extra
24 bin
archive
開發種組態詳細說明11.

識別符

意義實例

安裝的最新版本"barryvdh/laravel-cors": "^0.10.0" 安裝laravel-cors最新版本"barryvdh/laravel-cors": "~0.10.0", 安裝laravel-cors

12. require-dev

  1. composer install 会安装require-dev中的包,require中的包
  2. composer install --no-dev 只会安装require中的包

22. scripts

"scripts": {
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
}

scripts 是自定义执行SHELL命令,如上代码中,执行post-root-package-install 执行复制文件。

15 autoload

PHP 自动加载文件,分别有四种加载机制 psr-4 psr-0 classmap file

修改完 autoload 的内容之后要记得执行composer dump-autoload 来重新生成加载文件

prs-4
  1. 该目录下的 PHP 文件 采用 PSR-4 自动加载标准
  2. Composer会将该结构下的文件映射关系写入 autoload_classmap.php
"autoload": {
    "psr-4": {
        "App\\": "app/"
    }

}
prs-0
  1. 该目录下的 PHP 文件 采用 PSR-0 自动加载标准
  2. Composer会将该结构下的文件映射关系写入 autoload_namespaces.php
"autoload": {
    "psr-4": {
        "Cx\\": "prs0/"
    }

}
classmap
  1. Composer 加载 lib/ 目录下的所有文件,放入到 autoload_classmap.php
{
    "classmap":["lib/"]
}
file
  1. Composer 加载 src/test.php 该文件,放入到 autoload_files.php
{
    "files":["src/test.php"]
}

命令篇

详细命名请参考 Composer 命令行

composer install

先安装composer.lock 文件中packages中的版本;即使composer.jsoncomposer.lock 中版本不一致

你生產環境的Composer是怎麼樣的?

你生產環境的Composer是怎麼樣的?

composer update

先安装composer.json的版本,并且更新composer.lockpackages 中的版本

你生產環境的Composer是怎麼樣的?

你生产环境的 composer 是这样吗?

composer dump-autoload

^
~ 標識安裝的最後一位區間版本
0.10.0-0.10.9
CMD 说明 应用场景
composer dump-autoload 打印自动加载索引,就是将 autoload 中的各项加载到本该指定的目录。 开发环境 你更新了 autoload 中的各项,
composer dump-autoload -o 转换 PSR-0/4 autoloading 到 classmap 获得更快的载入速度 适用于生产环境
composer dump-autoload -o --no-dev 禁用 autoload-dev 规则 适用于生产环境
composer dump-autoload --classmap-authoritative 只加载 ClassMap中的文件,必到磁盘文件系统进行任何检查 适用于生产环境

因此生产请使用 composer dump-autoload -o --no-dev --classmap-authoritative

以上是你生產環境的Composer是怎麼樣的?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:learnku。如有侵權,請聯絡admin@php.cn刪除
成為作曲家的要求:深入潛水成為作曲家的要求:深入潛水May 03, 2025 am 12:08 AM

要成為作曲家,需要掌握音樂理論、樂器演奏、熟悉音樂風格和歷史,並具備創造力和靈感。具體步驟包括:1.學習音樂理論,如和弦結構和節奏模式;2.掌握樂器演奏,提升創作靈感;3.熟悉音樂製作軟件,如AbletonLive,提高創作效率;4.不斷練習和調整,創作複雜旋律和使用不和諧和弦增加音樂張力。

作曲家:PHP開發人員的軟件包經理作曲家:PHP開發人員的軟件包經理May 02, 2025 am 12:23 AM

Composer是PHP的依賴管理工具,通過composer.json文件管理項目依賴。 1)解析composer.json獲取依賴信息;2)解析依賴關係形成依賴樹;3)從Packagist下載並安裝依賴到vendor目錄;4)生成composer.lock文件鎖定依賴版本,確保團隊一致性和項目可維護性。

AI集成到作​​曲家:探索潛力AI集成到作​​曲家:探索潛力May 01, 2025 am 12:02 AM

AI能在音樂創作領域大展身手。 1)AI通過機器學習和深度學習生成音樂,提升多樣性和創新性。 2)AI作曲可輔助作曲家,提供靈感和創意。 3)實際應用中需優化性能,解決生成音樂的連貫性和創新性問題。

作曲家的目的:管理PHP中的項目依賴性作曲家的目的:管理PHP中的項目依賴性Apr 30, 2025 am 12:01 AM

我們需要Composer因為它能有效管理PHP項目的依賴,避免版本衝突和手動管理庫的麻煩。 Composer通過composer.json聲明依賴,並使用composer.lock確保版本一致,簡化了依賴管理過程,提高了項目穩定性和開發效率。

作曲家:通過AI的幫助開發PHP作曲家:通過AI的幫助開發PHPApr 29, 2025 am 12:27 AM

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

成為作曲家:培訓,教育和經驗成為作曲家:培訓,教育和經驗Apr 28, 2025 am 12:11 AM

要成為一名作曲家,需掌握音樂理論、和聲學、對位法,並熟悉樂器音色和演奏技巧。作曲家通過音樂表達情感和故事,創作過程涉及從想法到作品的構建和完善。

確定作曲家:基本要素確定作曲家:基本要素Apr 27, 2025 am 12:27 AM

識別作曲家的關鍵步驟包括:1)分析作曲家的風格特徵,如貝多芬的戲劇性和力量;2)了解作曲家的歷史背景和文化影響,如巴赫的巴洛克時期風格;3)綜合分析作品的旋律、和聲、節奏和結構,避免僅依賴單一元素導致誤判。

作曲家:PHP開發中AI的未來作曲家:PHP開發中AI的未來Apr 26, 2025 am 12:10 AM

Composer'sfutureinPHPdevelopmentwithAIincludes:1)AI-enhanceddependencymanagementforsuggestinglibraries,2)AI-drivencodegenerationfortailoredboilerplate,and3)predictivemaintenanceforupdatesandpatches,butfaceschallengeslikedataprivacyandAIbias.

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器