MENUCLOSE
twitter ツイッターfeedlyRSS

オンスタでは、オンラインで学習するために役立つコンテンツを掲載しています。そのほか、UdemyをはじめとしたEラーニングサービスの紹介も行っています。

オンスタ | オンラインで学習するための近道になるサイト
【PHP】PHPでライブラリ管理!「Composer」を使ってみよう

【PHP】PHPでライブラリ管理!「Composer」を使ってみよう

公開日:2017年12月06日
最終更新日:2017年12月06日
オンスタ運営
テクノロジー
プログラミング
ホーム > 全記事一覧 > 制作 > ディレクター > 【PHP】PHPでライブラリ管理!「Composer」を使ってみよう

Warning: Undefined variable $_cat_enginieer_flag in /home/growgroup/online-study.jp/public_html/wp-content/themes/online-study-wp/views/object/components/related-posts-inline.php on line 37
【PHP】PHPでライブラリ管理!「Composer」を使ってみよう
【PR】Udemyならスマホでもタブレットでも、いつでも気軽に学べます。

こんにちは!最近はまったくケイジャン(Cajon、打楽器カホンのこと)に触れていない、
ゴリラ出身のフロンドエンドエンジニア、ケイジャニストやまだです!

みなさんの中にも、普段からいろんな形でライブラリにお世話になったりすること、多分にあると思いますが、ライブラリを使っていると、

↓↓↓↓↓↓↓↓↓↓↓↓↓


「このプロジェクトを使うためにはライブラリAが必要だ!それではインストールして始めるとするか」

↓↓↓↓↓↓↓↓↓↓↓↓↓


「むむ?インストールはうまくいったけどライブラリAを動かすためにはライブラリBとCが必要のようだ。じゃあBとCもインストールしよう」

↓↓↓↓↓↓↓↓↓↓↓↓↓


「あれれ?ライブラリCをインストールしたらCを動かすためにライブラリDとEをインストールする必要があるの?」

↓↓↓↓↓↓↓↓↓↓↓↓↓


「うおおおおおお!?ライブラリEをインストールしたらEを動かすために...etc...」

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

「...................................................」

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

なんて依存地獄に陥ったこと、ありませんか?


割と普段から開発やコーディングをしているとこんな事は日常茶飯事だったりしますが、
そうならないためにも、昨今はパッケージマネージャーと呼ばれたりするパッケージを管理するツールでライブラリを管理することが多いです。
JavaScriptやcssなどフロントエンド周りだとbower(Twitter社が開発したパッケージマネージャー)や
npmなんかがよく使われていたりしますが、PHPにもパッケージ(ライブラリ)を管理するツールがあります。
デフォルトでインストールされているPEARなんかがありますが、いまやデファクトスタンダードになったComposerを使ってらっしゃる方も多い事でしょう。

というわけで今回は「PHPのライブラリを管理したい!」なんて方向けに
Composerを使ってライブラリのインストールからライブラリの読み込み、といった具合にご紹介してみたいと思います!
(僕の環境がMacですので、Mac環境でのご紹介になります。windowsの方すいません;;)

それでは今回のブログ、スタートどぇっす!

Composerのメリット

Composerはphpのライブラリ管理ツールになります。
公式サイトは以下
https://getcomposer.org/


冒頭で簡単に説明していますが、Composerを使う時のメリットについて軽くご紹介します。

「とあるライブラリAを使う」といった時、「動かすには別のライブラリBとCが必要」なんてことが起こった時に発揮されます。
通常こういった場合はライブラリAとBとC、それぞれ個別にダウンロードしてインストールしないといけませんよね。
ですがComposerを使うと、「ライブラリAに依存する必要なライブラリBとC」は自動でダウンロードしてインストールしてくれます。
この依存関係にあるライブラリを全て管理してくれるってのがComposer最大のメリットです。

他にもライブラリの最新バージョンがリリースされたりするときに、簡単にアップデートできたりと、運用していく上でも便利だったりします!

早速はじめてみましょう

さて、それでは早速始めましょう。
まずComposerを利用するためにはPHPがMacにインストールされている必要があります。
ですのでまずはちゃんと入っているか確認してみましょう!
確認は簡単。ターミナルを起動して以下のコマンドを打ちます。

php -v
view raw composer1 hosted with ❤ by GitHub

これで以下のようにphpの内容が表示されればオケオケオケーです!

もし表示されない場合はphpをインストールする必要がありますので、
別途インストールをお願いします。

Composerをインストール

やり方は幾つかあります。Homebrewを使ってインストールもできますが、
今回は普通にターミナルからインストールする方法でいきます。

curl -sS https://getcomposer.org/installer | php
view raw composer2 hosted with ❤ by GitHub

左側のURLのinstallerを「|」で挟んでphpで実行する感じです。
ダウンロードしてきたcomposer.pharファイルを移動しましょう

mv composer.phar /usr/local/bin/composer
view raw composer3 hosted with ❤ by GitHub

これでオッケーです。
ターミナルで以下のコマンドを打ってみましょう。

composer -v
view raw composer4 hosted with ❤ by GitHub

以下の画面が表示されればオケオケオッケーです!

Composerコマンドのオプション

これでComposerがインストールできたのでコマンドを早速打ってみましょう

composer --help

これを打つとコマンドでつけられるoptionなどが表示されます。
また、先ほど打ったComposer -vというコマンドは、Composerのバージョンを表示するコマンドになります。

インストールの下準備

それではComposerでライブラリをインストールしてみましょう。といきたいところですが、先に下準備を済ませます。
サンプルではphpQueryというライブラリをインストールします。

適当にディレクトリを作成してそこへ移動

まず適当にディレクトリを作成します。

mkdir test
cd test
view raw composer6 hosted with ❤ by GitHub

これでtestフォルダを作成して、testフォルダへ移動という感じになります。

 

composer.jsonファイルを作成して設置

作成します。

touch composer.json
view raw composer7 hosted with ❤ by GitHub

作成したら編集するので以下コマンドを打ちましょう。
これで関連付けられているテキストエディタとかで開けると思います。

open composer.json
view raw composer8 hosted with ❤ by GitHub

関連付けを特にしていないようでしたら、Finderなどで直接ディレクトリを覗いてみてください。
そちらにcomposer.jsonファイルがありますのでそちらを開いてください。

 

composer.jsonに設定を記述

開いたら以下の記述をしましょう。

{
"require": {
"electrolinux/phpquery": "^0.9.6"
}
}
view raw composer9 hosted with ❤ by GitHub

記述が完了したら準備オケオケオッケーです!

いざライブラリのインストール

composer.jsonにインストールしたいライブラリを先ほど記述しましたので、そのままインストールを開始しましょう。以下コマンドでインストールを開始します。

php composer.phar install

少し時間がかかりますがこれでインストールが完了します。
ディレクトリはこんな感じになっているはずです。

詳細は次の章でご紹介します!

実際にライブラリを使う

さてここまででインストールは完了です。実際にライブラリを使ってみましょう!
以下コマンドでファイルを作成します。

touch index.php

作成したらファイル内に以下の記述をしましょう。

<?php
// autoload.phpを読み込む
require_once __DIR__ . "/vendor/autoload.php";
//ここから下に処理を記述
?>

これでパッケージの読み込みは完了です!
お疲れ様した!

 

ちょっと解説

基本的にはComopser経由でインストールしたライブラリは
上記のvendorフォルダへと格納されます。
で、auotload.phpファイルに記述が追加されますので、
requireで読み込んでもらえればそのまま使っていくことができます。

また、ライブラリを追加するときはcomposer.jsonに追記するか、
以下のコマンドで追加できます。

composer require ~/~

後ろの「~/~」部分にライブラリ名を入力すれば追加されます!
今回のphpQueryであれば「electrolinux/phpquery」ですね。

また、composer.lockというファイルも作成されます。このファイルがあると、他の誰かがこのプロジェクトを使う時にこちらに書いてあるバージョンを優先してインストールするようになります。

一つのプロジェクトで複数人が作業する時に必要なファイルですね!
というわけで今日はここまで!

お試しあれ!

むすびに

いかがでしたか?
僕もこの辺でちょこちょこライブラリを足してごにょごにょし始めたのは
最近なもんですから、説明拙いかもしれませんが、ぜひ一度お試しください!

ではでは!みなさまごきげんよう〜!


【PR】Udemyならスマホでもタブレットでも、いつでも気軽に学べます。

Udemyを実際に体験した方の感想記事もぜひご覧ください♪

関連コンテンツ


Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
制作者への影響を探る!Gutenberg (グーテンベルグ) – WordPress 5.0 搭載予定の新エディタ
テクノロジー
プログラミング
公開日: 2017年11月29日
最終更新日: 2017年11月29日
制作者への影響を探る!Gutenberg (グーテンベルグ) – WordPress 5.0 搭載予定の新エディタ
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
コピペ実装!CSSだけでフォームのUI改善**サンプルコード7選
テクノロジー
デザイン
マークアップ
公開日: 2021年04月22日
最終更新日: 2021年04月22日
コピペ実装!CSSだけでフォームのUI改善**サンプルコード7選
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【Mac】SSH接続でXserverに接続してみよう(SSHクライアントソフト FileZilla設定も解説)
テクノロジー
公開日: 2017年02月01日
最終更新日: 2022年01月17日
【Mac】SSH接続でXserverに接続してみよう(SSHクライアントソフト FileZilla設定も解説)
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
ホームページを「おしゃれ」に!エフェクトを導入する方法<ホームページ制作初心者向け>
Webデザイン
テクノロジー
ホームぺージ更新
マークアップ
設計
公開日: 2018年02月16日
最終更新日: 2018年02月16日
ホームページを「おしゃれ」に!エフェクトを導入する方法<ホームページ制作初心者向け>
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
初心者でも簡単に作れる!ホームページを簡単に作る方法をご紹介
システム
テクノロジー
公開日: 2019年07月25日
最終更新日: 2019年07月25日
初心者でも簡単に作れる!ホームページを簡単に作る方法をご紹介
  • # ホームページ
  • # 方法
  • # 簡単
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
CSVを使ってWordPressの投稿、カスタム投稿へ記事データを流し込む方法(Really Simple CSV Importer)
WordPress
エンジニア
プログラミング
制作
公開日: 2019年10月31日
最終更新日: 2022年01月17日
CSVを使ってWordPressの投稿、カスタム投稿へ記事データを流し込む方法(Really Simple CSV Importer)
  • # Really Simple CSV Importer
  • # WordPress
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【調査】次のweb標準!?まことしやかに囁かれ続けるWeb Componentsとは?
テクノロジー
マークアップ
公開日: 2018年01月20日
最終更新日: 2018年01月20日
【調査】次のweb標準!?まことしやかに囁かれ続けるWeb Componentsとは?
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
現場で働いているからわかる!人気プログラミング言語を徹底比較
プログラミング
公開日: 2019年07月10日
最終更新日: 2019年07月10日
現場で働いているからわかる!人気プログラミング言語を徹底比較
  • # プログラミング言語
  • # 比較
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
requestAnimationFrameの基本的な書き方と使用例を学んでみた。
テクノロジー
プログラミング
公開日: 2021年06月30日
最終更新日: 2021年06月30日
requestAnimationFrameの基本的な書き方と使用例を学んでみた。
d.kitahama

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【第2弾】コピペ実装!CSSだけで作れるお洒落で使いやすいボタン◉サンプルコード7選
Webデザイン
テクノロジー
マークアップ
公開日: 2020年08月07日
最終更新日: 2020年08月07日
【第2弾】コピペ実装!CSSだけで作れるお洒落で使いやすいボタン◉サンプルコード7選
オンスタ運営
全記事一覧

web制作者にオススメのオンライン学習サイト「Udemy」

世界最大級のコースがラインナップ!電子書籍サイト「Udemy」

世界最大級のコースがラインナップ!オンライン学習サイト「Udemy」

「Udemy」ではいつでもどんなトピックでも、専門家が教える何千ものコースを用意されており、無料で学べるコースも多数あります。もうちょっと勉強したいな。スキルアップしたいな。と思ったら是非チェックしてみてください。