Directory

Installation

Command

Overview

Composer 是 PHP 的套件管理工具,而且是以專案為管理單位,讓我們可以直接使用其他高手設計好的元件,可以說是 PHP 的火力支援庫,例如以下這些好用且重要的套件: tracy、carbon、monolog、fpdf 等。

Composer

PHP 套件儲存庫

以往 PHP 的套件散落在許多不同的網頁,沒有集中存放的儲存庫,因此引用的開發者要更新或查詢都不容易, Packagist 儲存庫彙集了許多可運用 composer 安裝的套件,並透過網頁的方式,查詢下載次數、推薦次數、版本號碼、授權方式、原始碼位置等資訊,因此套件設計者可只要依照規範重構自己的套件後,再將資訊放上去,之後開發者便可先在 Packagist 上查詢喜歡的套件,然後使用 composer 指令來進行安裝與更新該套件。

Packagist

專案結構

建議結構

建立一個獨立的資料夾 public/ 來存放網頁內容,如此一來可以減少專安目錄的資訊過度洩漏,例如 : composer.json.git/ 等。

mkdir public
mv index.php public/

php -S localhost:8000 -t public

使用方法

為了確保之後可以使用 composer 的套件,所以必須在應用程式的入口點中優先引入 vendor/autoload.php

require __DIR__ . '/vendor/autoload.php';

只要引用上述檔案,就可以載入套件中所有對外公開的類別。基本上每個套件都會定義自己的 autoload 規則,在安裝時,composer 會把這些規則加入,這樣透過 autoload.php 就可以直接使用所有已安裝的類別。