当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

PHP Laravel framework入門(1) – 準備編

LaravelはいまやSymfonyと人気を2分するPHPのフレームワーク。といってもSymfonyと全く異なるものではない。Symfonyの派生フレームワークと位置づけられている。良質なライブラリーで使いやすいのが人気。恐らく学習するコストが従来のフレームワークより少ない点が良いのだと思う。

それでは最初に準備に取り掛かろう。laravelを使用するにはPHPが必要だ。PHPはOSにバンドルされている最新のものを使うと良いだろう。LaravelはPHP7にも対応している。また様々なOSプラットフォームに対応しているがやはり定番のLinuxに導入し使うのが最も良いパフォーマンスを発揮するのは間違いない。

インストール前の準備

Laravelを導入する前には必要最低限の導入が事前に必要です。現在の最新バージョンは5.4になっており一番気をつける部分はPHPのバージョンです。

【PHP関連のコンディション】

  • PHP >= 5.6.4
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension

次に重要な事はcomposerモジュールが導入されていることです。入っていない場合は下記に従ってインストールを行いましょう。

ダウンロードしたセットアップファイルが問題ないか確認します。

一気にインストールを行います。

laravelのインストール

Composerはモジュールインストールのツールとしてphp関連のインストールでよく使われるツールです。laravelではプロジェクトの雛形やモジュールのインストール更新にはComposerを標準で使用しています。下記のコマンドを実行することでlaravelがインストールされます。

laravelのインストール

laravelの開発環境を用意するにはやり方が2種類あります。デフォルトの標準的なシステムの雛形をインストールする方法とある程度利用指向に合わせた雛形のインストールです。この開発環境の雛形を作ることをプロジェクトを作るといいます。下記は結果的に同じ処理を行っていますが2つ目の方法ではすでにある別のプロジェクトの雛形を使用して導入することもできます.

その1

その2

ローカルWEBサーバの起動

laravelの場合も最近のフレームワーク同様デフォルトでローカルWEBサーバを起動して開発中のものをモニターできます。例えばブラウザのアクセスならhttp://xxx.xxx.xxx.xxx:8000/でアクセスすると表示することができます。ホストの部分はデフォルトでローカルホストを指しています。そのため他の端末からモニターするにはホスト指定が必要です。

ホストとポート番号の変更については下記のように指定ができます。下記2つは最初の起動はサーバのIPアドレスを指定してリッスンするケース。2つ目はインターネット上のどのアドレスから来たものでも受け付ける起動です。

各フォルダーの役割について

【public】Public Directory

このフォルダーがlaravalのドキュメントルートフォルダーになります。Apacheサーバやnjinx等使用する場合にはここを起点(ROOTフォルダー)とするように設定を行います。

【config】Configuration Files

各種フレームワークの根幹の設定を行うファイル群が集まっているフォルダー

【app】Applicatipn program

プログラムロジックが集まっているフォルダーでコントローラや各種イベント処理、例外処理、ミドルウェア等のファイルが設置されるフォルダー

【bootstrap】

このフォルダーは、フレームワークの初期起動やオートローディングの設定を行うファイルを含んでいます。

【database】

このフォルダーは、データベースのマイグレーションとDBの初期データ(シーディング)を配置します。モデルの作成等を行うとDBの雛形が生成されます。

【resources】

このフォルダーは、ビューやアセットの元ファイル(LESS、SASS、CoffeeScript)、「言語」ファイルを配置します。

【storage】

コンパイルされたBladeテンプレート、ファイルベースのセッション、ファイルキャッシュなど、フレームワークにより生成されるファイルが保存されます。

【vendor】

Composer依存パッケージが配置されます。

【routes】

ユーザがアクセスした際に、指しているURLに対してサーバ側ではルータに記述されたパスと連動してコントローラやView,モデルが起動します

【tests】

自動テストを配置します。