諸々、PHPのフレームワークを使い比べようと思いComposerをインストールしました。
ComposerはPHPのパッケージ管理ツールです。(依存性管理ツール)
フレームワークやライブラリを導入時に必要なパッケージを指定されたバージョンでインストールしてくれ、依存関係にあるパッケージも合わせてインストールしてくれる優れモノ。
依存関係の類のエラーはめんどくさいですよね。
その措置として最初からComposerを通してインストールしちゃいましょう。
はじめに
PHPの動作環境がが必須です。
以下、自分の環境です。
# php --v
PHP 7.2.7 (cli) (built: Jun 20 2018 08:21:26) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
実行ユーザについて
Composerは、rootで実行するべきではないそうです。
(ただインストール時のユーザまでの指定はないかと。)
今回自分はrootでインストールしました。インストール後に実行ディレクトリに移すため。(”/usr/local/bin/”に移動)
あくまで実行時にroot以外で実行すれば問題ないでしょう。
インストール
下記コマンドでセットアップ用のPHPファイルをダウンロードされます。
実行したディレクトリに、composer-setup.phpがダウンロードされます。
# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
次にインストールしたセットアップファイルを実行します。
# php composer-setup.php
実行が完了するとcomposer-pharできているはずです。
# ls -l
total 2108
-rw-rw-r-- 1 root root 263621 Jan 3 21:34 composer-setup.php
-rwxr-xr-x 1 root root 1892003 Jan 3 21:35 composer.phar
composer-setup.php はもう使用しないので削除しましょう。
# php -r "unlink('composer-setup.php');"
実行ディレクトリへ移動
root以外でも実行できるように + どこでもComposerを実行できるように実行ディレクトリへ移動。
# mv composer.phar /usr/local/bin/composer
確認
まずrootから抜けましょう。
# su - 任意のユーザ名
composerのバージョン確認コマンド実行。
# composer
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ / __ `__ / __ / __ / ___/ _ / ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
____/ ____/_/ /_/ /_/ .___/ ____/____/ ___/_/
/_/
Composer version 1.8.0 2018-12-03 10:31:16
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
・
・
・
上記のようにバージョンとコマンド一覧が出てくれば導入完了となります。