PHP 使用 Composer 管理套件、函式厙

PHP 套件、函式庫管理官方版都是使用 PEARPecl 等, 但是 PEAR 已經很久沒動靜了, Pecl 的 Package 數量直接瀏覽的話, 心算應該都可以加總完, 所以大家都往其它方向走, ex: PHP Class Scripts.

註: PEAR 套件製作比較繁瑣, 若想製作 PEAR 套件可以使用此工具: Template for Jenkins Jobs for PHP Projects

現在 PHP 有個困擾就是, Package 分散在各地, 需要分開下載、安裝, 升級、管理是個很大的困擾, 不過此問題看來 Composer 都解決掉了, 於是 Package 如雪片般的出現, 詳見: Packagist

註: Amazon Cloud 官方 PHP 套件使用 Composer 來管理.

PHP 使用 Composer 管理套件、函式厙

Composer 是一隻 Phar 的執行程式(Phar 會將程式打包成一隻執行檔), 可以安裝於自己目錄 或 Global 環境, 在此就只先紀錄 安裝 與 操作使用 的方式.

Composer 安裝

Composer 安裝很簡單, 只要下述步驟即可: (參考資料可見: Composer Introduction)

  1. $ curl -sS https://getcomposer.org/installer | php # 會產生 composer.phar, 產生完就可以執行操作.
  2. $ sudo mv composer.phar /usr/local/bin/composer # 搬到全域環境並改名成 composer 方便操作
  3. 到此就完成囉~
  4. 註: 安裝於全域環境(Globally), 升級就會需要 sudo composer self-update
  5. 自己升級: sudo composer selfupdate # composer 升級
  6. 套件升級: composer update

Composer 套件安裝方式

Composer 先知道如何安裝一個套件與使用: (此範例是安裝 Amazon 官方 SDK 套件)

  1. vim composer.json # 寫入要使用的套件名稱、版本
    {
        "require": {
            "aws/aws-sdk-php": "2.*"
        }
    }
  2. composer install # 即可下載安裝(php composer.phar install)
  3. 安裝完成後, 程式內容加入 <?php require 'vendor/autoload.php'; ?> 就可以直接使用.

Composer 基本指令操作使用

註: 若 composer.phar 改名為 composer, 請自行將 "php composer.phar" 替換成 "composer".

下述整理自此篇: Composer command line interface

  • init: php composer.phar init
  • install: php composer.phar install
  • update:
    • php composer.phar update
    • php composer.phar update vendor/package vendor/package2
    • php composer.phar update vendor/*
  • require:
    • php composer.phar require
    • php composer.phar require vendor/package:2.* vendor/package2:dev-master
  • search: php composer.phar search monolog
  • show:
    • php composer.phar show
    • php composer.phar show monolog/monolog
    • php composer.phar show monolog/monolog 1.0.2
  • depends: php composer.phar depends --link-type=require monolog/monolog
  • validate: php composer.phar validate # It will check if your composer.json is valid
  • status: php composer.phar status # php composer.phar status -v
  • self-update: php composer.phar self-update
  • Config: php composer.phar config --list
  • Modifying Repositories: php composer.phar config repositories.foo vcs http://github.com/foo/bar
  • create-project: php composer.phar create-project doctrine/orm path 2.2.0
  • help: php composer.phar help install

Composer 常用函式庫

下面列出幾個可能會用到的套件:

相關網頁

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

在〈PHP 使用 Composer 管理套件、函式厙〉中有 2 則留言

  1. 請問, 你提到, 「註: 若 composer.phar 改名為 composer, 請自行將 "php composer.phar" 替換成 "composer"」, 怎麼看已經改名了? 例如, 我下composer install有效, 但是安裝composer時沒改過什麼? 謝謝~

    1. 喔,你直接執行看看有沒有 composer 或 composer.phar 就知道有沒有改名了~ 🙂

      你下 composer install 有效,就代表已經是 composer 了.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料