PR

Laravel入門!Laravel Herd のインストールからサンプルアプリの作り方まで

記事内に商品プロモーションを含む場合があります

Laravel入門!Laravel Herd のインストールからサンプルアプリの作り方まで解説します。

Laravel入門!Laravel Herd のインストールからサンプルアプリの作り方まで

Laravelとは?

Laravel は、PHPでWebアプリケーションやWebシステムを効率よく開発するためのフレームワークです。フレームワークとは、システム開発でよく使われる機能や仕組みをあらかじめ用意してくれている「開発の土台」のようなものです。2011年に公開されて以来、Laravelは世界中のPHP開発者から支持されており、現在ではPHPフレームワークの代表的な存在のひとつとなっています。

Laravel Herdとは?

Laravel Herd は、Laravel開発者向けに提供されているローカル開発環境ツールです。Windows や macOS に簡単にPHP環境を構築でき、Apache や nginx の細かな設定をしなくても、すぐにLaravel開発を始められるのが大きな特徴です。これまでLaravelの学習では、XAMPP・MAMP・Docker・VirtualBoxなどを使うケースが多く、「環境構築で挫折する」という現象がおこっていました。特にPHPのバージョン違いやPATH設定、Composerの導入などで時間を消費してしまうこともあります。Laravel Herd はそうした問題をかなり解消してくれます。インストール後は自動的にPHP・Composer・dns設定などを整えてくれるため、初心者でも短時間でLaravelを起動できます。また、複数のPHPバージョン切り替えも簡単で、Laravel以外のPHP開発にも応用可能です。最近では「Laravelを始めるならまずHerd」と言われることも増えてきていますよ。

Laravel Herd のインストール

まずは公式サイトから Herd をダウンロードします。

Laravel Hard

Windows版とmacOS版が用意されていますが、筆者はWindows環境なので「Download for Windows」をクリックしてダウンロードしました。

Laravel Herd のインストール

ここでは Herd-1.28.0-setup.exe をダウンロードしました。

インストーラーを実行すると、必要な設定を自動で行ってくれます。途中で Windows のセキュリティ警告や管理者権限の確認が表示される場合がありますが、基本的には「はい」で進めて問題ありません。

インストール完了後、タスクトレイに Herd のアイコンが表示されます。ここで現在利用しているPHPバージョンなどを確認できます。

タスクトレイのHerdアイコン

躓きやすいポイントとしては以下があります。

Windows Defender の警告

初回起動時に「WindowsによってPCが保護されました」と表示される場合があります。この場合は「詳細情報」→「実行」を選択してください。

セキュリティソフトによるブロック

一部のウイルス対策ソフトがPHPやローカルサーバー通信を遮断することがあります。localhost が開けない場合は、セキュリティソフトを確認してみましょう。

ポート競合

すでにXAMPPやApacheを起動していると、ポート80や443が競合して Herd が正常動作しない場合があります。不要なローカルサーバーは停止しておくのがおすすめです。

Composer が使えるか確認する

Laravelをインストールするには Composer が必要です。

Composer はPHPのパッケージ管理ツールで、Laravel本体もComposer経由でインストールします。Herd をインストールすると、多くの場合 Composer も自動で利用可能になります。コマンドプロンプトまたは PowerShell を開き、以下を入力してください。


composer -V // Composer version 2.x.x

バージョン情報が表示されればOKです。

Composer がインストールされていない場合は公式ページからダウンロードしましょう。

Composer

手っ取り早く試したい方は「Composer-Setup.exe」をダウンロードしてインストールするといいですよ。

Composerダウンロード

もし「composer は内部コマンドまたは外部コマンドとして認識されていません」と表示された場合は、PATH設定がうまく反映されていない可能性があります。

その場合は、PC再起動・Herd再起動・PowerShell再起動を試してみてください。

Laravelプロジェクトを作成する

次はいよいよLaravelアプリを作成します。任意の作業フォルダへ移動して以下を実行します。


cd C:\laravel
composer create-project laravel/laravel myapp

このコマンドは、Laravel本体のダウンロード・必要ライブラリの取得・初期設定までを自動でやってくれます。完了まで数分かかる場合があるので気長に待ちましょう。

インストール後、作成されたフォルダへ移動します。


cd myapp

ここでよく遭遇するのが「途中で止まる問題」です。主な原因には以下があります。

通信環境が不安定

Composerは大量のパッケージを取得するため、回線が不安定だと失敗します。

PHPバージョン不一致

古いPHPでは最新Laravelが動かない場合があります。HerdでPHPバージョンを確認し、必要なら変更しましょう。

ちなみに筆者の環境ではバージョン8.3を使っています。8.4でインストールしたらライブラリがエラーを出したので、8.3で安定させています。

また、XAMPPをインストールしている場合は、XAMPPのPHPを見ている可能性があります。パスを確認して下記のパスが上位にくるように変更しましょう。

C:\Users\{ユーザー名}\.config\herd\bin

クラウドストレージサービス配下での問題

Windowsでは OneDrive/Google Drive/Dropbox 配下にプロジェクトを置くと、同期処理でファイルロックが発生するケースがあります。「C:\projects」などシンプルな場所への作成をおすすめします。

Laravel の開発サーバーを起動する

Laravelには簡易サーバー機能があり、以下のコマンドで実行できます。


php artisan serve // INFO  Server running on http://127.0.0.1:8000

ブラウザでアクセスすると Laravel の初期画面が表示されます。

今回は Herd を使うので、Hard を起動し、Herdの Sites から Add Siteで右側のLinkを選んでC:\laravel\myappを指定します。

HerdのSitesからAddSiteでプロジェクト追加する

すると「http://myapp.test」でアクセスできるようになります。

Laravelの初期画面

Hard が起動しているかどうかは、Windows画面右下の「隠れているインジゲーター」を表示して Head アイコンがあるかどうかで確認できます。

タスクトレイのHerdアイコン

混乱しやすいのが、

  • artisan serve
  • Herdのローカルドメイン

の違いです。

どちらもローカル開発用ですが、

  • artisan serve → Laravel内蔵サーバー
  • Herd → 常駐ローカル環境

という違いがあります。

せっかく Herd をインストールしたので Herd の URL でアクセスすることをおすすめします。

サンプル画面を作ってみよう

次に簡単な画面を作ってみましょう。まず routes/web.php を開きます。


Route::get('/', function () {
    return 'Laravelへようこそ!';
});

保存後、ブラウザを更新すると文字が表示されます。

ただ、実際のLaravelでは Blade というテンプレートエンジンを使うのが一般的です。

routes/web.php をもとに戻して resources/views/welcome.blade.php を編集してみましょう。


<h1>Laravel サンプルアプリ</h1>
<p>はじめてのLaravel画面です。</p>

するとHTML画面が表示されます。

ここで躓くポイントは「キャッシュが残る」「保存したのに変わらない」「どのファイルを編集しているかわからない」という点です。Laravelはファイル数が多いため、最初はディレクトリ構造を把握するだけでも大変です。

まずは以下だけ覚えておきましょう。

フォルダ役割
routesURL定義
resources/views画面
appPHP処理
public公開フォルダ

データベース設定をしてみる

XAMPP経由のMYSQLを起動して、データベースを作成します。照合順序は「utf8mb4_unicode_ci」にしておくと余計な変更をしなくて楽です。

MYSQLでデータベースを作成

Laravelでは .env ファイルで環境設定を管理します。

筆者はXAMPPのMySQLを使っているので、下記のように編集しました。


DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=myapp
DB_USERNAME=root
DB_PASSWORD=

もし文字コードを別の設定にしたなら下記のコードを書き換えましょう。


config/database.php
'mysql' => [
    // ...
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
],

序盤で最も苦戦しやすいのが、このDB接続設定です。

よくあるミスは「DB名が存在しない」「パスワード間違い」「MySQLが起動していない」「文字コード問題」などですね。

接続確認として以下を実行します。


php artisan migrate

成功すると users テーブルなどが自動作成されます。

migrateコマンドによってできたテーブル群

「Access denied」や「Connection refused」ってエラーがよく出ます。ほとんどの場合が、DBが起動されていない、ユーザー/パスワードもしくはポート番号の記述間違いです。エラーをよく読んで対応しましょう。

Laravel環境構築で挫折しやすいポイント

Laravelは便利な反面、覚えることが多いフレームワークです。

特に混乱しやすいのは以下です。

MVC構造

Laravelは、

  • Model
  • View
  • Controller

に役割を分けます。

最初は「なぜ分けるの?」と感じるかもしれません。しかし、規模が大きくなるほど整理しやすくなります。

artisanコマンドが多い


php artisan

で大量のコマンドが表示されます。最初は全部覚える必要はありません。

まずは、


php artisan serve
php artisan migrate

だけでも十分です。

エラー画面が英語

最初は intimidating に感じますが、実はエラー内容はかなり親切です。Google翻訳やChatGPTを活用すると理解しやすくなります。

まとめ

Laravel入門としてLaravel Herd のインストールからサンプルアプリの作り方までを紹介しました。

Laravel と Laravel Herd を組み合わせることで、以前より圧倒的に簡単にPHP開発環境を構築できるようになりました。

特に、「PHP設定」「Webサーバー設定」「Composer導入」などの面倒な作業が減るため、プログラミングに集中しやすくなります。

最初はエラーが多く感じるかもしれませんが、Laravelはネット上に情報量が非常に多いフレームワークです。検索すればすぐに解決策が見つかるのもうれしいですね。

次回は「Breeze and Blade」を使ってユーザー認証を作ってみようと思います。

おつかれさまでした。

この記事がお役に立ちましたら シェア をお願いいたします。