【初心者必見】MacにComposerをインストールする方法/ HomebrewでComposerをインストールする方

みなさんComposerの知識はありますか?
この記事はComposerを触ったことない方や、Composerについてよく分かってない方や、
初めてで全く知識がない方へ「Composerとは」?や「Cmopserの使い方」などについての紹介です。
この記事でわかること
- Composerとは
- パッケージ管理システムとは(パッケージマネージャーとは)
- MacにComposerをインストールする方法の全体の流れ
- Composerのインストール方法
- インストーラーからComposerをインストール
- HomebrewからComposerをインストール
- Composerのバージョン確認
- ComposerのPATHを通す
- ComposerのバージョンでPATHが通ってるか確認
この記事を最後まで読めば「Composerとは」から「Composerのインストール」などまでの理解が深まりますので、最後まで読んで「Composer」についてマスターしましょう。

それでは順に見ていきましょう。
Composerとは
Composerとはパッケージ管理システムです。
パッケージ管理システムのことを「パッケージマネージャ」ともいいます。
パッケージ管理システムとは(パッケージマネージャーとは)
パッケージ管理とは、実行ファイルや設定ファイル、ライブラリなどを管理することをシステムのことです。
MacにComposerをインストールする方法の全体の流れ

MacにComposerをインストールするには次の流れになります。
- Homebrewをインストール
- homebrewでComposerをインストール
スポンサードサーチ
Composerのインストール方法
Composerのインストール方法
- インストーラーからComposerをインストール
- HomebrewからComposerをインストール
インストーラーからComposerをインストール
インストーラーからComposerをインストール

Composer を現在のディレクトリにインストールするには、Composerの公式サイトからコマンドを参考にして、ターミナルでスクリプトを実行します。
以下のコマンドも公式と同じですが、公式が更新する場合がありますので、公式を参考にするようにして下さい。
(2022年1月の時点では同じです)
% php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
% php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup. php'); } echo PHP_EOL;"
% php composer-setup.php
% php -r "unlink('composer-setup.php');"

コマンドの意味も説明しますね。
% php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
インストーラーを現在のディレクトリにダウンロードします
% php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup. php'); } echo PHP_EOL;"
インストーラーの SHA-384 を確認します。
ここでもクロスチェックできます
% php composer-setup.php
インストーラーを実行する
% php -r "unlink('composer-setup.php');"
インストーラーを削除する

コマンドの意味をまとめると以下のようになっています。
スポンサードサーチ
HomebrewからComposerをインストール

Homebrewがまだインストールできてない方はインストールして下さい。
Homebrewwのインストール確認
brew -v
バージョンが返ってこない場合は、Homebrewをインストールして下さい。
リンク
HomebrewからComposerをインストール
brew install composer
brew install composerの実行結果

kami@kami ~ % brew -v
Homebrew 3.6.17
Homebrew/homebrew-core (git revision 87313c9e17c; last commit 2023-01-08)
kami@kami ~ % brew install composer
Running `brew update --auto-update`...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
aws-sam-cli cascadia ecoji gokey kwctl openvino
bzip3 cdebug flagd grayskull ocm podsync
You have 5 outdated formulae installed.
You can upgrade them with brew upgrade
or list them with brew outdated.
==> Fetching dependencies for composer: ca-certificates, xz, webp, icu4c and php
==> Fetching ca-certificates
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2023-
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/blobs/sha256:11
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Fetching xz
==> Downloading https://ghcr.io/v2/homebrew/core/xz/manifests/5.4.1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/xz/blobs/sha256:3908f1a9e36d68a
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Fetching webp
==> Downloading https://ghcr.io/v2/homebrew/core/webp/manifests/1.3.0
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/webp/blobs/sha256:b184d1461126f
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Fetching icu4c
==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/manifests/72.1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/blobs/sha256:90c50fe2cbf8
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Fetching php
==> Downloading https://ghcr.io/v2/homebrew/core/php/manifests/8.2.1_1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/php/blobs/sha256:726b06ef84a363
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Fetching composer
==> Downloading https://ghcr.io/v2/homebrew/core/composer/manifests/2.5.1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/composer/blobs/sha256:60d0bda41
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sh
######################################################################## 100.0%
==> Installing dependencies for composer: ca-certificates, xz, webp, icu4c and php
==> Installing composer dependency: ca-certificates
==> Pouring ca-certificates--2023-01-10.all.bottle.tar.gz
==> Regenerating CA certificate bundle from keychain, this may take a while...
🍺 /opt/homebrew/Cellar/ca-certificates/2023-01-10: 3 files, 216.9KB
==> Installing composer dependency: xz
==> Pouring xz--5.4.1.arm64_monterey.bottle.tar.gz
🍺 /opt/homebrew/Cellar/xz/5.4.1: 95 files, 1.7MB
==> Installing composer dependency: webp
==> Pouring webp--1.3.0.arm64_monterey.bottle.tar.gz
🍺 /opt/homebrew/Cellar/webp/1.3.0: 47 files, 2.3MB
==> Installing composer dependency: icu4c
==> Pouring icu4c--72.1.arm64_monterey.bottle.tar.gz
🍺 /opt/homebrew/Cellar/icu4c/72.1: 263 files, 78.4MB
==> Installing composer dependency: php
==> Pouring php--8.2.1_1.arm64_monterey.bottle.tar.gz
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set php_ini /opt/homebrew/e
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set php_dir /opt/homebrew/s
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set doc_dir /opt/homebrew/s
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set ext_dir /opt/homebrew/l
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set bin_dir /opt/homebrew/o
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set data_dir /opt/homebrew/
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set cfg_dir /opt/homebrew/s
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set www_dir /opt/homebrew/s
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set man_dir /opt/homebrew/s
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set test_dir /opt/homebrew/
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear config-set php_bin /opt/homebrew/o
==> /opt/homebrew/Cellar/php/8.2.1_1/bin/pear update-channels
🍺 /opt/homebrew/Cellar/php/8.2.1_1: 519 files, 83.3MB
==> Installing composer
==> Pouring composer--2.5.1.arm64_monterey.bottle.tar.gz
🍺 /opt/homebrew/Cellar/composer/2.5.1: 3 files, 2.7MB
==> Running `brew cleanup composer`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
Composerのバージョン確認

「composer -V」と「composer -v」ではそれぞれの結果が異なりますが、バージョンが返ってきます。
composer -V
Composer version 2.5.1
「composer -V」でコマンドを叩けばバージョンだけが返ってきます。
composer -v
composer -v
「composer -v」でコマンドを叩けば
Homebrewでインストールしたパッケージの確認

brew list
Homebrewでインストールしたパッケージの確認を「brew list」で確認ができます。
スポンサードサーチ
ComposerのPATHを通す
ComposerのPATHを通す
% sudo mv composer.phar /usr/local/bin/composer
「composer.phar」を「/usr/local/bin/composer」へ移動します。
ComposerのバージョンでPATHが通ってるか確認
Composerのバージョン確認
% composer --version
バージョンが返ってくれば、Composerがインストールされていて、PATHも通ってるってことです。
まとめ
インストーラーからComposerをインストールする場合は、公式からコマンドを参考するようにしましょう。
- インストーラーからComposerをインストール
- HomebrewからComposerをインストール
- Homebrewをインストールしてない場合は、先にHomebrewをインストールする
実装やエラーが解決できない場合
プログラミングの実装やエラーでどうしてもわからない場合はメンターに相談するのが一番です。
考えている、見えている範囲が狭くなり、解決から遠くに行って何時間も、何日も経っていることなんてよくある話です。
そういう時は聞ける先輩や、メンターに相談することが大事です。
僕にも相談可能なので気軽に相談してください。

Twitterからの連絡だと確実ですよ。
オンラインスクールやプログラミングスクールといったプログラミングを学べる方法もあるので、そちらもぜひ活用してもいいと思います。
Web開発で分からない時
オンライン完結型スクール DMM WEBCAMP PROアプリ開発で分からない時
プログラミング×稼げる副業スキルはテックキャンププログラミングについて分からない時
【コエテコ様限定】※ご案内を受けた以外のメディアが使用しても成果は承認されません。
僕への個人でもメンターでも、スクールでもお好きな方を活用ください。