アプリケーション開発にあたりLaravelを使用する。
まずは導入としてアプリの雛形をインストールして、アプリケーションがどんな風になっているかを確認したい。
データベースの用意
まずはデータベースを作成する。
今回はtest_appというデータベースで作成する。
コマンドラインからMySQLに接続してデータベースを作成する。
$ mysql -u root
mysql> CREATE DATABASE test_app;
mysql> exit
Laravelのインストール
下記のコマンドでLaravelのアプリケーションの雛形を導入できる。
// composer create-project --prefer-dist laravel/laravel アプリケーション名 バージョン指定(あれば)
$ composer create-project --prefer-dist laravel/laravel kakeibo
少し時間がかかってちゃんと新しいディレクトリができていればOK
Laravelアプリケーションのファイル
Laravelのアプリ内のファイル構造はこんな感じ。
ディレクトリ/ファイル名 | 概要 |
app | applicationの略、その名の通りアプリケーションのメインとなるクラスはほとんどここに入る |
bootstrap | フレームワークの初期化を行うファイルが入る。フロントエンドフレームワークのBootstrapとは無関係 |
config | configurationの略、アプリケーションの設定に関するファイルが入る |
database | データベースのマイグレーションやシードが入る |
public | アセット(画像、JavaScript、CSSなど)や全HTTPリクエストを始めに処理するファイルが入る |
resources | コンパイル前のビューやアセットが入る |
routes | ルーティングに関するファイルが入る |
storage | コンパイルされたBladeテンプレート、キャッシュやフレームワークが生成するファイルが入る |
tests | テストに関するファイルが入る |
vendor | Composerによる依存パッケージが入る |
.env | environmentの略、アプリケーションの環境変数をまとめる |
composer.json | composer updateコマンドでアップデートするパッケージをまとめる |
composer.lock | composer installコマンドでインストールするパッケージをまとめる |
.envファイルにデータベースの設定をする
VScode(テキストエディタ)から.envファイルを開き、先ほど作成したデータベース名を入力する。
DB_DATABASE=test_app
DB_USERNAME=root
DB_PASSWORD=""
サーバを立ち上げてページを表示させる
ビルトインサーバ(プログラミング言語が元々持っている開発用の簡易的なサーバ)を立ち上げる。
Laravelプロジェクト内に移動したら下記のコマンドを発動ッ
いでよ!LaravelTOPページ!
$ php artisan serve
ローカルホストにアクセスすると・・・
とりあえずこんな感じで簡単にLaravelの導入はできたけど、結構ここからだから!笑
ターミナルに戻るとずっと入力状態になっていて、コマンドを受け付けないようになっているので、基本的にはもう一つターミナルを立ち上げて、平行して作業を進めていくことになる。
VScode内でもターミナルを立ち上げられてとても簡単に平行作業ができるので、やっぱりVScodeが良き。
サーバを落としたいとき
サーバを落としたいときはphp artisan serveコマンドを叩いたターミナルの続きに、ctrl+c
と打てばOK
ちなみに、.envファイルに変更があるたびに設定を反映させないといけないのでサーバを再起動させる必要がある。
ビルトインサーバ立ち上げに使用するコマンド
php artisan serveコマンドはLaravelアプリケーションが持っているコマンドで、PHP自体が持っているコマンドでもサーバを立ち上げることができる。ただの自分への覚書き。
// php -S ホスト名:ポート番号
$ php -S kakeibo:8000
ただしこの方法でサーバを立ち上げる場合には、Laravelアプリ内でレスポンスとして返すファイルがpublicディレクトリ以下になるため、publicディレクトリを指定するか、publicディレクトリ内まで移動する必要がある。
まぁいろいろ言ったけど、Laravelアプリ内ならphp artisan serveコマンド使ったらラクで間違いないよって話。
まとめ
今回はLaravelアプリ開発のアプリの雛形を作ってサーバを立ち上げるまでをやった。
ページを作成したりルーティングやデータベースとの連携をしたり、一つのアプリを作るのにやることはまだまだたくさんあるので亀速で共有していきたい。
はやくアプリ作りたいな。