php composer使用
3804 ワード
Composer-POPで使用される依存の管理(dependency)
定義#テイギ# composerはPHPにおいて依存関係を管理するためのツールである.依存する外部ツールライブラリ(libraries)を自分のプロジェクトで宣言することができます.Composerは依存するライブラリファイルをインストールします. ComposerはPHP 5を必要とする.3.2+以上の環境で動作します.いくつかの敏感なPHP設定とコンパイルフラグも必要ですが、インストーラは互換性がない場合に警告します. Composerは、Windows、Linux、OSXに適用されるマルチプラットフォーム対応です.インストール linux curl -sS https://getcomposer.org/installer | PHP --install-dirオプションを使用して、Composerのインストールディレクトリ(絶対パスまたは相対パス) を指定できます. mv composerをグローバルにインストールする.phar/usr/local/bin/composerは、php composerを入力することなくcomposerコマンドを実行するだけで使用できるようになりました.phar.
windowsダウンロードhttps://getcomposer.org/Composer-Setup.exe windows composerの環境変数 を設定する必要がある場合があります composer-Vバージョン番号composer-help表示コマンドヘルプ 参考文献http://docs.phpcomposer.com/ composer中国ミラーの使用http://pkg.phpcomposer.com/ composer.jsonファイル説明 require key requireでは、monolog/monologなどのパケット名をパケットバージョン(1.0.*など)のオブジェクトにマッピングする必要があります. パッケージ名は、仕入先名とそのプロジェクト名からなる バージョン演算子 正確バージョン1.0.2 ワイルドカード1.0.*1.0のすべてのバージョン 範囲>、>=、<、<=、!=、複数の範囲を定義し、カンマで区切ることができます.これは論理AND処理と見なされます.パイプシンボル|は論理ORとして処理されます. 賦値演算子~1.2,~1.2は>=1.2,<2.0に相当し、1.2以上の任意のバージョンを許可するが、2.0は含まれない.最低バージョンを指定しますが、バージョン番号の最後の数字を上昇させることができます.
php composerのインストールを実行する.phar install は、monolog/monologの最新バージョンを見つけ、vendorディレクトリにダウンロードします.これは、サードパーティのコードを指定したディレクトリvendorに渡す慣例です.monologの場合はvendor/monolog/monologディレクトリが作成されます. もう一つはinstallコマンドがcomposerを作成することです.lockファイルはあなたのプロジェクトのルートディレクトリにあります. Gitを使用してプロジェクトを管理している場合はvendorを追加する可能性があります.gitignoreファイルにあります.すべてのコードをバージョンライブラリに追加することはありません.
composer.lock-ロックファイル インストール依存後、Composerはインストール時の正確なバージョン番号リストをcomposerに書き込む.lockファイル.これにより、変更項目の特定のバージョンがロックされます. updateコマンドを使用します.これにより、最新の一致するバージョン(composer.jsonファイルに基づいて)が取得され、新しいバージョンがロックファイルに更新されます.php composer.phar update 依存をインストールまたは更新したい場合は、php composerのリストを白くすることができます.phar update monolog/monolog [...]
自動ロード ライブラリの自動ロード情報について、Composerはvendor/autoloadを生成する.phpファイル.このファイルを簡単に導入することができ、無料の自動ロードサポートが得られます.require 'vendor/autoload.php'; composerでjsonのautoloadフィールドに自分のautoloaderを追加します. ネーミングスペースからディレクトリへのマッピングを定義できます.srcはプロジェクトのルートディレクトリでvendorフォルダと同級になります.例えばsrc/Foo.phpファイルにはAcmeFooクラスが含まれているはずです.Autoloadフィールドを追加したら、installコマンドを再実行してvendor/autoloadを生成する必要があります.phpファイル. は、このファイルを参照してautoloaderのインスタンスも返します.呼び出しを含む戻り値を変数に格納し、より多くのネーミングスペースを追加できます.これは、テストスイートでクラスファイルを自動的にロードするのに役立ちます.たとえば. 基本コマンドの使用 最小化composer.json、プロジェクトディレクトリに切り替え、composerを新規作成します.json composer installを実行 はvendorディレクトリを作成します.そこには関連するコードがあります. はcomposerを作成します.lockファイル はvendor/autoloadを生成する.phpは、自動的にロードされるphpファイル である
定義#テイギ#
{
"require": {
"monolog/monolog": "1.0.*"
}
}
{
"autoload": {
"psr-4": {"Acme\\": "src/"}
}
}
$loader = require 'vendor/autoload.php';
$loader->add('Acme\\Test\\', __DIR__);
使用例{
"require-dev": {
"phpunit/phpunit": "4.3.*"
}
}