PHPにおけるライブラリの依存管理ツールとしてComposerというツールがあります。Composerがあれば、プロジェクトのために必要なライブラリとそのライブラリに依存関係のあるライブラリをまとめてインストール/アップデートすることができます。
ここではComposerとは何か?という説明とComposerのインストールまでの流れをまとめています。なお、使用OSはWindows10です。
Composerとは何か?
Composerを管理しているhttps://getcomposer.org/トップページにはComposerの説明として「Dependency Manager for PHP」と書かれています。この説明を単純に直訳すれば、「PHPのための依存管理者」という感じでしょうか。
そもそもComposerという単語の意味は「作曲家」や「構成者」、「作者」などといった意味があります。トップページ画像の指揮棒を振り上げている指揮者のイラストを見ても、Composerの役割はなんとなく見えてきそうなものです。ちなみに、このイラストはサイトにアクセスするたびに色違いの画像が出てきます。このようなちょっとした遊び心がWebサイトの訪問者としては素直に嬉しかったしますよね。
Composerについて詳しく知りたいのであれば、まずは公式サイトのGetting Startedのページを参照するとよいでしょう。ここにはComposerがどういうものであるのかという説明とダウンロードおよびインストールの仕方、そしてComposerの使い方が簡単に説明されています。それ以上のより詳しい説明を知るには、Documentationのページを参照するのがよさそうです。
さてGetting StartedページにはComposerをどのように説明しているでしょうか?IntroductionおよびDependency managementの説明は以下のとおりです。
Introduction
Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.
Introduction - ComposerA Dependency Manager for PHPDependency management
Composer is not a package manager in the same sense as Yum or Apt are. Yes, it deals with “packages” or libraries, but it manages them on a per-project basis, installing them in a directory (e.g.
vendor
) inside your project. By default it does not install anything globally. Thus, it is a dependency manager. It does however support a “global” project for convenience via the global command.This idea is not new and Composer is strongly inspired by node’s npm and ruby’s bundler.
Suppose:
- You have a project that depends on a number of libraries.
- Some of those libraries depend on other libraries.
Composer:
- Enables you to declare the libraries you depend on.
- Finds out which versions of which packages can and need to be installed, and installs them (meaning it downloads them into your project).
See the Basic usage chapter for more details on declaring dependencies.
Introduction - ComposerA Dependency Manager for PHP
これらの説明を見れば、だいたいの意味は把握できるはずです。私の口から要約するのであれば、Composerは「node.jsのnpmやRubyのbundlerに触発されて開発された、PHPのためのパッケージ管理ツール」といったところでしょう。Composerを使えば、必要なライブラリが○○と依存関係にあって○○は××にも依存関係にあるから、全部インストールしなければならないという非常に面倒で手間のかかる作業を自動で見つけ出し依存関係のあるライブラリを管理してくれます。
Composerのインストール手順
①トップページより
まずはトップページからDownloadリンクにアクセスしてみましょう。するとこんなページにアクセスするはずです。URLでいうとhttps://getcomposer.org/download/なります。
②https://getcomposer.org/download/よりComposer-Setup.exeリンクのクリック
バージョンや訪問時期によって多少変わることは容易に予測できますが、基本的なインストール方法は変わらないと思います。この画面が表示されたら、Windows Installerという項目のComposer-Serup.exeというリンクをクリックし、任意のディレクトリにComposerをインストールするためのファイルをダウンロードします。
ダウンロード後、インストールの作業に入りたいので、落としたファイルをダブルクリックし、システムの変更に対し「はい」を選択すると、インストール設定に入ります。
③インストール設定開始、まずはInstallation Optionsの設定
最初に出てくるのはInstallation Optionsの設定です。
ここではアンインストーラーが同梱されていないDeveloper modeとデフォルト時からアンインストーラーが入っているバージョンの選択ができます。Windowsを使ってComposerを導入しようとし、なおかつコマンドラインではなくインストーラーを使いComposerを導入しようとしている私のようなプログラミングに長けていない初心者はDeveloper modeではないインストールがおすすめだと思います。つまりはアンインストラーありでインストールしてもらうということですね。
④PHPファイルの設定
次に表示されるのは使いたいPHPファイルの場所設定です。こんな画面。
私はXAMPPに入っているPHPを使用するので、画像のように設定しました。Composerを導入するには、PHPが必ず導入されてなければいけないのでこの画面が表示された段階で、おそらくどこかしらにあるPHPがデフォルトで表示されていることと思います。私もここにXAMPP内のPHPの場所がデフォルト表示されていました。どの場所のどのバージョンのPHPを使いたいなどそれぞれの要望があると思うので、この段階で上手く変更してみてください。
⑤Proxy Settingsの設定
次に表示されるのは下の画面です。こちらはProxy Settingsについての設定です。
Proxyを使っている方はそのProxy urlを設定してください。Proxyなんて使ってないよという方はそのままNext>を押して次へ進んでください。
そもそも自分がProxyを使っているかわからないという方は、PC画面のタスクバーにあるWindowsマークを右クリックし、その中から設定をクリックしてみてください。
設定をクリックしたら表示された画面から「ネットワークとインターネット」の項目をクリックします。
次に表示される画面でサイドエリアにある「プロキシ」をクリック。
表示された画面でプロキシ設定がオフになっていれば、プロキシは設定されていません。逆にオンになっているのであれば、その設定をComposerにも反映して設定してあげましょう。
⑥Ready to Install
この画面が出れば、あとは「Install」のボタンをクリックすれば、Composerのインストールが始まります。
⑦Information
この画面では最初にComposerを使い始める時の注意事項が書かれています。
最初にComposerを使うときには、以下の項目のいずれかを実行しなければいけません。その理由は、Composerのセットアップにより実行環境の設定がインストール前と異なっているためです。
- 新しいコマンドウィンドウを開くこと
- すべてのエクスプローラーウィンドウを閉じること
- もう一度ログオフとログオンをし直し、それから新しくコマンドウィンドを開けること
上記のいずれかです。
⑧Completing Composer Setup
この画面が出ればComposerのインストールの終了です!もしドキュメントを見るのであればチェックボタンにクリックして「Finish」をクリックするか以下のリンクからアクセスしてチェックしてみてください!
コメント