[php] Composerをインストール
目次
Composerをインストール
PHP のパッケージの管理を依存関係と共に扱ってくれるComposerをインストール
インストールディレクトリへ移動
phpパッケージを使用したいプロジェクト(wwwフォルダなど)に移動する
パッケージはそのフォルダにダウンロードされる
インストール
Composerをインストールする
*ハッシュ値は場合によって異なるので公式サイトでチェックすること
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer
インストールが完了するとcomposer.pharというファイルが作成されている
参考:https://getcomposer.org/download/
パッケージダウンロードしてみる
同じ場所にcomposer.jsonファイルを作成する
例:php-phantomjsパッケージ
{ "require": { "jonnyw/php-phantomjs": "4.*" } }
作成したら
php composer.phar install
とコマンド入力
パッケージがダウンロードされ、venderというフォルダが作成される
パッケージを使用するにはパッケージを使用するphpファイルに
require 'vendor/autoload.php';
を追加する。
複数のパッケージがあってもこの行だけで良いので便利。
指定パッケージだけ追加
php composer.phar installを実行すると、既にあるパッケージも新しいバージョンにアップデートされてしまうので、特定のパッケージだけを追加して既存のパッケージは触りたくない場合は
php composer.phar require "jonnyw/php-phantomjs": "4.*"
と実行する
composer.json
composer.jsonにはrequireだけでなく、パッケージインストール後に実行できる「script」など追記できる
Jsonファイルなので、各要素の間には「,」をつけておくこと。
{ "require": { "kreait/firebase-php": "^2.0", "jonnyw/php-phantomjs": "4.*" }, "scripts": { "post-install-cmd": [ "PhantomInstaller\\Installer::installPhantomJS" ], "post-update-cmd": [ "PhantomInstaller\\Installer::installPhantomJS" ] }, "config": { "bin-dir": "bin" } }
/vendor/autoload.phpが見当たらないエラー
require ‘vendor/autoload.php’;とパッケージを導入したにもかかわらず
/vendor/autoload.php failed to open stream: No such file or directory
とエラーが表示されることがあるが、php実行ファイルと同じ場所に/vendor/autoload.phpがあるかを確認すること。
Pingback: [aws]いまさらにAWS SDK2を入れてみる | BlueBear I/O
Pingback: Debian + PHPを使ってプログラム経由でWEBページにアクセスする (Chrome+facebook/webdriver) | BlueBear I/O