記事の内容やaishipシリーズに関するお問い合わせはこちらから

0120-173-163 お電話

[電話受付時間]平日9:30〜19:00

TOP

CATEGORY

SERVICE

PHPフレームワーク導入準備〜Composerインストール編

PHPフレームワーク導入準備〜Composerインストール編

こんにちは 開発部山田です。
ちょっと色んなフレームワークを試して検証したいことが出てきたので、今回から数回に分けてフレームワークの導入と実装、検証等で気付いたことを挙げていければと思います。

とは言うものの前準備が全く出来てなかったのでまずは各FWのインストールや管理ツールを用意することからかなと…そこでまず入れておいたのがComposerですね…というかこれ入れないと全然先に進めなかった..

色々と調べたことを整理するためにもここで一旦まとめておきます。

Composerとは

1609_composer_01

PHPプログラミング言語向けのソフトウェアおよび必要なライブラリの依存関係を管理する標準形式を提供するアプリケーションレベルのパッケージ管理システムである。(wikkipedia抜粋)

ということで、PHPでのアプリケーション開発に必要なライブラリを管理するツールです。コマンドライン上から実行し、各種ライブラリのインストールや管理で使用するツールになります。

パッケージ管理が用意でることからgitやpearより好まれる傾向にあるみたいです。PHPではデフォルトでpearがインストールされてますが、、、

 pear -> インストールしたパッケージがOS全体に反映される
 composer -> インストールしたパッケージがプロジェクト単位で反映される

ですのでパッケージの影響がディレクトリ内で完結できるため、composerの方が使い勝手が良いかと思います。

あとはcomposerでインストールしたパッケージは、

includeやrequireを記述せずにクラスが読み込める(クラスオートローディング機能)

というところが利点でしょうか。

今回はさまざまなフレームワークのインストールを試行してみますが、フレームワークの定番CakePHPの公式インストールガイドにもComposerを使用したインストールが進められています。

(参考)
Composerに対応するフレームワーク[編集]
Symfony バージョン 2 以降
Laravel バージョン 4 以降
CodeIgniter バージョン 3.0 以降
CakePHP バージョン 3.0 以降
FuelPHP バージョン 2.0 以降
Drupal バージョン 8 以降

Composerのインストール

ではComposerのインストールをしてみたいと思います。

実行環境は下記のとおりです。
OS: Mac OS X Yosemite (ver10.10.5)

さて、やってみましょう。

①composerをダウンロード

$ curl -sS https://getcomposer.org/installer | php
------ログ
Some settings on your machine may cause stability issues with Composer.
If you encounter issues, try to change the following:

The OpenSSL library (0.9.8zc) used by PHP does not support TLSv1.2 or TLSv1.1.
If possible you should upgrade OpenSSL to version 1.0.1 or above.

Downloading...

Composer successfully installed to: /Users/h.nakajima/composer.phar
Use it: php composer.phar

私のmacはどうやらOpenSSLのバージョンが古いみたいです。。。。
※今回は関係ないので読み飛ばします

②バイナリファイルをパスの通った場所にコピー

$ mv composer.phar /usr/local/bin/composer

mv: rename composer.phar to /usr/local/bin/composer: Permission denied
パーミッションで怒られたのでsudoで実行

$ sudo mv composer.phar /usr/local/bin/composer

では、動くか確認します。

$ composer -V

Composer version 1.1.2 2016-05-31 19:48:11

とまぁ動いてるみたいです。

composerのインストールだけでは物足りないので、、、このままcakePHPもインストールしてみましょう。

③composerを使ってcakePHPをインストール

php composer.phar create-project --prefer-dist cakephp/app first_my_app

※ここではfirst_my_appというディレクトリにインストールしています。

composerをインストールすると/first_my_app配下にcomposer.jsonというファイルが生成されますね。

viewでファイルの内部を確認してみると下記の様な記述が見られます。

"require": {
        "php": ">=5.5.9",
        "cakephp/cakephp": "~3.3",
        "mobiledetect/mobiledetectlib": "2.*",
        "cakephp/migrations": "~1.0",
        "cakephp/plugin-installer": "*"
    },

このJSONファイルで依存関係などを記述していくようです。

ちなみに上記の記述は php composer.phar update と実行するたびに、デフォルトのバージョン制約 ~3.3 を使って最新の安定リリース版が手に入ります。 アップデート時には、3.x 系のバグ修正とマイナーバージョンアップだけが適用されます。

ここからプロジェクトファイルの立ち上げやサンプルプログラムの実装までが長そうなのですが、とりあえず今日はここまで…

                   
クラウドECのサイト構築はaishipR-カスタマイズ可能なASP実績No.1

累計2000社以上の導入の総合通販型カートシステムで、カスタマイズ性が高く、デザインの自由度はもちろん、各種システムとの連携や機能追加等も独自のカスタマイズができるため、こだわりのある本格的な通販を月額9,800円から実現できます。 またモバイルファースト設計や月2回の無償バージョンアップなどの特徴があり、使いやすさと最新性を追求した通販サイトを構築できます。 さらに信頼性の高いサーバーを採用しており大規模アクセスにも対応できるため、これからさらに通販での売上を伸ばされたい事業者様におすすめです。
         

技術カテゴリの最新記事