composer apiリファレンス

2965 ワード

composer note
概要composerはphpの依存管理ツールです.プロジェクトに依存するライブラリを宣言できます.composerは、プロジェクトに基づいてライブラリ(パッケージ)を管理およびインストールするためにcomposerをインストールします.依存するライブラリをプロジェクトのvendorフォルダにインストールします.デフォルトでは、ライブラリはグローバルにインストールされません.composerはphpであり、npmはnodejsであり、bundlerはrubyである.
1つの例composor.jsonは、プロジェクト依存ライブラリを記述する
{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

composerはphp 5を要求する.3.2+、コードウェアハウス(git/svn/hg)
インストール
Windowsの下にcomposerをインストール
  • 自動インストールダウンロードcomposer-setup.exeを実行すると、composerがインストールされpath
  • が設定されます.
  • 手動でインストール作業ディレクトリに切り替え、次のコマンドを実行してcomposer.phar
    C:\bin>php -r "readfile('https://getcomposer.org/installer');" |php
    //C:\bin  path   
    //            
    C:\bin>echo @php -r "readfile('https://getcomposer.org/installer');" | php
    //              
    C:\bin>composer -V 
  • をダウンロードする.
    使用
  • ダウンロード依存ライブラリ
    //composer    composer.json   ,  json           
    php composer.phar install
    //       composer,           
    composer install
    
    //    
    php composer.phar -h
  • の自動ローディング依存ライブラリautoload.phpがダウンロード依存ライブラリを処理するほか、composerは同時に自動ローディング依存ライブラリの機能を提供する.例えば:
    require __DIR__ . '/verdor/autoload.php'
  • ;
    ;
    composerの基本的な使い方
    1. composer.json composer.jsonは、プロジェクトに依存するライブラリおよびその他のメタデータを記述する
    composer.jsonの例:
    {
        "require": {
            "monolog/monolog": "1.0.*"  // verdorName/projectName: version
        }
    }

    パッケージのバージョン番号:
  • 正確なバージョン番号は1.0.2
  • 比較演算子は、バージョン範囲を表す:>=1.0>=1.0<2.0(スペースまたはandを表す)>=1.0<1.1|>1.2(|orを表す)
  • ダッシュは、バージョンの範囲を表します.たとえば、1.0~2.0は(>=1.0.0<2.1)と(1.0.*~2.0.*)の
  • と等価です.
  • バージョン範囲をワイルドカードで表します.たとえば、1.0.*(>=1.0.0<1.1)
  • に等しい
  • 波線表示バージョン範囲は、~1.2が(>=1.2<2.0)~1.2に等価である.3は(>=1.2.3<1.3.0)
  • に等しい
  • 脱文字表示範囲は、^1.2.3等価(>=1.2.3<2.0)
  • 注意:~1.2.3と^1.2.3の違い
    インストール依存:composer.jsonファイル記述の依存性をプロジェクトにインストール
    //      cd  composer.json    
    php composer.phar install

    依存関係のインストールが完了すると、composerはインストールされた正確なバージョン情報をcomposerに書き込む.ロックファイル
    composer.lock他の人がインストール時にも同じバージョンの依存ライブラリをダウンロードしていることを確認します
    //        composer.lock  
    php composer.phar update
    //      1         
    php composer.phar update monolog/monolog

    packagist packagistは主要なcomposerコードウェアハウスであり、簡単に言えばミラーソースである.packagist公式サイト
    autoload.php
    require 'vendor/autoload.php';
    
    //          ,           
    //autoload.php            
    $log = new Monolog\Logger('name');
    $log->pushHandler(new Monolog\Handler\StreamHandler('app.log',Monolog\Logger::WARNING);
    //...stuff