前置き
前回の記事でPHPが動くようにXAMPPを利用して環境構築を行いました。
今回はその続きとして、Laravelの画面を出すところまでやります。
手順
Composer
まずLaravelの導入に必須となるComposerというソフトウェアをインストールします。
- Xdebugの設定を行っている場合、Composerのインストール途中でエラーが発生します
- これは、Xdebugがphp.iniの設定でComposer(PHP)の実行時もXdebugが呼び出されてしまうことに起因しています
- 最も簡単な対処法として、以下のコードを[php.ini]に追加します
xdebug.log_level=0
- 欠点として、xdebugのログファイルが出てこなくなりますがデバッグのログファイルは集めててもさほど意味を成さないので問題無いでしょう
- もしログファイルが欲しい場合は、他の手法もあるようですが今回は割愛
- [php.ini]は[XAMPP Control Panel]の[Config]より開くのが確実です
- Composerの公式サイトのDLページから[Composer-Setup.exe]をダウンロードして実行します。
- XAMPPがCドライブ直下で全ユーザ共通のシステム環境変数で動くので、ComposerもAll Userとしてインストールしましょう
- 変わったことをしていなければ、[Next]と[Finish]の操作のみでインストールが完了します
- Pathも自動登録されるので、PowerShellなどのターミナルを開き、[composer]コマンドを実行すると下の画像のように結果が返ってきます
Laravel
Laravelプロジェクトの作成はインストーラをダウンロードして、新規プロジェクトとして展開(laravelコマンド)する方法と、Composerコマンドを使用して作成する方法があります。
後者が楽なので、そちらで行います。
Laravelプロジェクトの構築場所について
PHPの時はXAMPPを用いたこともあり、XAMPPのhtdocs内(Apacheサーバ内)にphpファイルを用意したり、[httpd.conf]にポート番号とプロジェクトルートの対応を記述してApache内環境でのプロジェクト管理を想定していました。
Laravelに関しては、同じようにApache内に構築することも可能ですが、Apacheに依存せずとも構築することも可能です。
私としてはソフト開発のプロジェクトはDocumentsフォルダに作成したい性質なので、Apache外に構築する方法を選びます。
インストール
ついでに、Git管理したいのでそのあたりからスタートします。
- Gitのリポジトリを作成しておき、DocumentsにCloneする
- Cloneしたフォルダ(今回はlaravel_sample_appというリポジトリ名)をVSCodeで開く
- ターミナルを開き、以下コマンドを入力
composer create-project --prefer-dist laravel/laravel myapp
[–prefer-dist]は、ZIPでダウンロードしてから展開する動作(オプション無しより速いらしい)オプションで、無し場合のデフォルト動作はパッケージのclone的な動作となる
[laravel/laravel]は、パッケージ名
- Laravelプロジェクトが作られるのを待つ
- プロジェクト作成が終了したら、階層を移動
cd myapp
- Laravel開発サーバは以下のコマンドで起動
php artisan serve
- ブラウザで[localhost:8000]にアクセスしてLaravelの初期ページが開けばOK
ちなみにApache内に構築すると、ApacheをStartして[localhost/myapp/public]にアクセスする。
PHP Debugの動作確認
PHPの環境構築で実行したXdebugのステップ実行が動作するかを確認する。
- PHPの時と同じように、Laravelのルートに[launch.json]を作成
- [<root>/public/index.php]の適当な場所にブレークポイントを置く
- デバッグを実行状態にする
- [localhost:8000]にアクセスして、ブレークポイントで止まることを確認
最後に
PHPの環境構築もしておいたおかげで、結構楽にLaravelが構築出来ました。
Laravelの構築としては終わりですが、私個人は元々読んでた書籍でLaravelがサンプルだったのでやってきたので、そちらの学習を進めます。
備忘録として記事にしたいものがあったらPHP記事として何か書きますが。
追記:2022/11/4
色々あってLinuxでの環境構築をする流れになりましたので、続きの記事があります。