目錄
安裝
修改鏡像來源
首頁 後端開發 php教程 手寫PHP API框架(二)之Composer的安裝使用

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

Feb 10, 2023 am 10:36 AM
php composer api

上一篇《手寫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中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱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

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

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
使用 Composer 解決推薦系統的困境:andres-montanez/recommendations-bundle 的實踐 使用 Composer 解決推薦系統的困境:andres-montanez/recommendations-bundle 的實踐 Apr 18, 2025 am 11:48 AM

在開發一個電商網站時,我遇到了一個棘手的問題:如何為用戶提供個性化的商品推薦。最初,我嘗試了一些簡單的推薦算法,但效果並不理想,用戶的滿意度也因此受到影響。為了提升推薦系統的精度和效率,我決定採用更專業的解決方案。最終,我通過Composer安裝了andres-montanez/recommendations-bundle,這不僅解決了我的問題,還大大提升了推薦系統的性能。可以通過一下地址學習composer:學習地址

laravel入門實例 laravel入門實例 Apr 18, 2025 pm 12:45 PM

Laravel 是一款 PHP 框架,用於輕鬆構建 Web 應用程序。它提供一系列強大的功能,包括:安裝: 使用 Composer 全局安裝 Laravel CLI,並在項目目錄中創建應用程序。路由: 在 routes/web.php 中定義 URL 和處理函數之間的關係。視圖: 在 resources/views 中創建視圖以呈現應用程序的界面。數據庫集成: 提供與 MySQL 等數據庫的開箱即用集成,並使用遷移來創建和修改表。模型和控制器: 模型表示數據庫實體,控制器處理 HTTP 請求。

解決 Craft CMS 中的緩存問題:使用 wiejeben/craft-laravel-mix 插件 解決 Craft CMS 中的緩存問題:使用 wiejeben/craft-laravel-mix 插件 Apr 18, 2025 am 09:24 AM

在使用CraftCMS開發網站時,常常會遇到資源文件緩存的問題,特別是當你頻繁更新CSS和JavaScript文件時,舊版本的文件可能仍然被瀏覽器緩存,導致用戶無法及時看到最新的更改。這個問題不僅影響用戶體驗,還會增加開發和調試的難度。最近,我在項目中遇到了類似的困擾,經過一番探索,我找到了wiejeben/craft-laravel-mix這個插件,它完美地解決了我的緩存問題。

繼續使用PHP:耐力的原因 繼續使用PHP:耐力的原因 Apr 19, 2025 am 12:23 AM

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

laravel框架安裝方法 laravel框架安裝方法 Apr 18, 2025 pm 12:54 PM

文章摘要:本文提供了詳細分步說明,指導讀者如何輕鬆安裝 Laravel 框架。 Laravel 是一個功能強大的 PHP 框架,它 упростил 和加快了 web 應用程序的開發過程。本教程涵蓋了從系統要求到配置數據庫和設置路由等各個方面的安裝過程。通過遵循這些步驟,讀者可以快速高效地為他們的 Laravel 項目打下堅實的基礎。

laravel怎麼查看版本號 laravel查看版本號方法 laravel怎麼查看版本號 laravel查看版本號方法 Apr 18, 2025 pm 01:00 PM

Laravel框架內置了多種方法來方便地查看其版本號,滿足開發者的不同需求。本文將探討這些方法,包括使用Composer命令行工具、訪問.env文件或通過PHP代碼獲取版本信息。這些方法對於維護和管理Laravel應用程序的版本控制至關重要。

使用DICR/YII2-Google將Google API集成在YII2中 使用DICR/YII2-Google將Google API集成在YII2中 Apr 18, 2025 am 11:54 AM

vProcesserazrabotkiveb被固定,мнелостольностьстьс粹餾標д都LeavallySumballanceFriablanceFaumDoptoMatification,Čtookazalovnetakprosto,kakaožidal.posenesko

如何使用 Composer 簡化郵件營銷:DUWA.io 的應用實踐 如何使用 Composer 簡化郵件營銷:DUWA.io 的應用實踐 Apr 18, 2025 am 11:27 AM

在進行郵件營銷活動時,我遇到了一個棘手的問題:如何高效地創建並發送HTML格式的郵件。傳統的方法是手動編寫代碼並使用SMTP服務器發送郵件,但這不僅耗時,而且容易出錯。在嘗試了多種解決方案後,我發現了DUWA.io,這是一個簡單易用的RESTAPI,能夠幫助我快速創建和發送HTML郵件。為了進一步簡化開發流程,我決定使用Composer來安裝和管理DUWA.io的PHP庫——captaindoe/duwa。

See all articles