目錄
#1.簡介
2.系統需求
3.安裝(ubuntu)
4.使用
5.自動載入
6.Packagist / Composer 中國全量鏡像
7.使用Composer 中的autoload 實作自動載入命名空間
首頁 開發工具 composer php composer的簡明安裝步驟及使用方法

php composer的簡明安裝步驟及使用方法

Jan 12, 2022 pm 04:07 PM
composer linux php

本文由composer教學專欄為大家介紹安裝php composer的簡潔安裝步驟方法,希望對需要的朋友有幫助!

#1.簡介

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

2.系統需求

執行 Composer 需要 PHP 5.3.2 以上版本。
Composer 是多平台的,它可以同時在 Windows 、 Linux 以及 OSX 平台上運作。

3.安裝(ubuntu)

curl -sS https://getcomposer.org/installer | php mv composer.phar
mv composer.phar /usr/local/bin/composer
登入後複製
註:如果沒有安裝curl,可以透過以下指令安裝
apt-get update
apt-get install curl
登入後複製

當你的Composer 安裝完畢之後,你可以實用下列命令查看是否安裝成功

composer -v
登入後複製
注意如果上述方法由於某些原因失敗了,你也可以透過php 下載安裝器:
php -r "readfile('https://getcomposer.org/installer');" | php
登入後複製

這將檢查一些PHP 的設置,然後下載composer.phar 到你的工作目錄。這是 Composer 的二進位。這是一個 PHAR 套件(PHP 的歸檔),這是 PHP 的歸檔格式可以幫助使用者在命令列中執行一些操作。

你可以透過--install-dir 選項指定Composer 的安裝目錄(它可以是一個絕對或相對路徑)

4.使用

要開始在你的專案中使用Composer,你只需要一個composer.json 檔案。該文件包含了項目的依賴和其它的一些元資料。

首先建立一個composer.json 文件,寫入對應的套件名稱和版本號,如

{    
    "require": {
        "monolog/monolog": "1.13.*"
    }
}
登入後複製

這是後就寫入了一個依賴包,之後安裝依賴包。取得定義的依賴到你的本機項目,之後在你的專案目錄中(即 composer.json 所在目錄)使用 Composer 執行 install 指令。

composer install
登入後複製

當然,如果是在 Windows 系統中,也可以透過呼叫 composer.phar 套件來進行依賴套件的安裝。

php composer.phar install
登入後複製

執行composer install,就進入自動安裝,安裝完成後會產生一個composer.lock 文件,裡面是特定的版本號名,需要這個文件和composer.json 一起提交到版本管理裡去。

最後,在需要更新依賴套件的時候,可以使用以下命令

composer update
登入後複製

如果只想更新部分依賴

composer update monolog/monolog
登入後複製

5.自動載入

對於庫的自動載入信息,Composer 產生了一個vendor/autoload.php 檔案。你可以在你專案的入口文件中引入它

<?php
require __DIR__ . &#39;/vendor/autoload.php&#39;;
?>
登入後複製

這使得你可以輕鬆的使用第三方程式碼。例如:如果你的專案依賴 monolog,你就可以像這樣開始使用這個類別庫,並且他們將被自動載入。

<?php
require __DIR__ . &#39;/vendor/autoload.php&#39;;

$log = new Monolog\Logger(&#39;name&#39;);
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));

$log->addWarning('Foo');
?>
登入後複製

6.Packagist / Composer 中國全量鏡像

#由於牆的問題,所以會導致Composer 的國外鏡像經常無法正常的install,所以推薦使用國內的鏡像,使用方式如下

有兩種方式啟用本映像服務:

  • 系統全域設定: 即將設定資訊新增至Composer 的全域設定檔config.json 中。詳見」方法一「
  • 將設定資訊加入到某個專案的 composer.json 檔案中。詳見」方法二「

方法一: 修改composer 的全域設定檔
開啟命令列視窗(windows使用者)或控制台(Linux、Mac 使用者)並執行下列指令:

composer config -g repo.packagist composer https://packagist.phpcomposer.com
登入後複製

方法二: 修改目前專案的composer.json 設定檔:

開啟命令列視窗(windows使用者)或控制台(Linux、Mac 使用者),進入你的專案的根目錄(也就是composer.json 檔案所在目錄),執行以下指令:

composer config repo.packagist composer https://packagist.phpcomposer.com
登入後複製

上述指令將會在目前專案中的composer.json 檔案的末端自動加入映像的設定資訊(你也可以自己手動新增):

"repositories": {
    "packagist": {
        "type": "composer",
        "url": "https://packagist.phpcomposer.com"
    }
}
登入後複製

7.使用Composer 中的autoload 實作自動載入命名空間

Composer 除了可以幫你安裝所需的依賴套件以外,還可以實現自動載入命名空間的功能,當我們自己編寫的函數庫與類別庫需要自動載入時,我們就可以透過composer.json 來實現。它類似php 中的 spl_autoload_register(),其實如果你去查看Composer 中的原始碼,你會看到它的自動載入功能也是用了 spl_autoload_register() 這個函數。 《具體可看此文章詳細介紹》

我們在 composer.json 裡加入以下程式碼:

{
    "autoload": {
        "psr-4": {
            "Test\\": "test/",
            "Testtwo\\": "testtwo/"
        }
    }
}
登入後複製

这个配置文件中有一个 autoload 段,其中有个 《PSR-4》,psr-4 是一个基于 psr-4 规则的类库自动加载对应关系,只要在其后的对象中,以 ”命名空间“: “路径” 的方式写入自己的类库信息修改完成后,之后,在执行下列命令,即可完成自动加载。

composer dumpautoload
登入後複製
注: "psr-4": {"Test\\": "test/"} 中的 "test/" 路径为相对于  composer.json 的路径

这个时候,你就可以调用你自己编写的函数库或者类库了

<?php
require __DIR__ . &#39;/vendor/autoload.php&#39;;

$testClass = new \Test\Testclass();
?>
登入後複製
注:本文内容参考了《Composer 中文网》,后续还会更新 Composer 其它的实用功能

以上是php 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)

Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

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

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

使用 Composer 解決推薦系統的困境:andres-montanez/recommendations-bundle 的實踐 使用 Composer 解決推薦系統的困境:andres-montanez/recommendations-bundle 的實踐 Apr 18, 2025 am 11:48 AM

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

繼續使用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應用程序的版本控制至關重要。

如何使用 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。

使用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

See all articles