PHP Laravel入門ガイド: 初心者向けステップバイステップで学ぶ基礎と実践例

Laravel入門

PHP Laravelは、Webアプリケーション開発における非常に人気のあるフレームワークの一つで、その柔軟性と使いやすさから多くの開発者に支持されています。初心者がLaravelを学び始めるにあたって、基礎から実践的なスキルを構築することは重要です。今回は、PHP Laravelの基本的な理解から、実際のプロジェクトで役立つ実践的な例まで、ステップバイステップで解説していきます。

Laravelとは?

Laravelは、PHPで書かれたオープンソースのWebフレームワークです。このフレームワークは、エレガントで簡潔なシンタックスを提供し、Web開発の一般的なタスク(ルーティング、セッション管理、認証、キャッシング)を容易にします。Laravelの強みは、その豊富なエコシステムと、美しいコードを書くための様々な機能が統合されている点にあります。

Laravelのインストール

まずはLaravelのインストールから始めましょう。LaravelはComposerというPHP依存管理ツールを用いてインストールされます。以下の手順に従って、Laravelをインストールします。

  1. Composerのインストール:
    まず、Composerをインストールする必要があります。公式サイト(https://getcomposer.org/)からダウンロードし、インストールします。

  2. Laravelプロジェクトの作成:
    Composerがインストールされたら、ターミナルまたはコマンドプロンプトを開いて以下のコマンドを実行します。

    composer create-project --prefer-dist laravel/laravel myFirstApp
    

    これにより、myFirstAppという名前の新しいLaravelプロジェクトが作成されます。

基礎を学ぶ

ディレクトリ構成

Laravelの美しさはそのディレクトリ構成にあります。以下は主要なディレクトリとその役割です。

  • app: アプリケーションのコアコードが含まれています(例: コントローラー、モデル)。
  • config: 各種設定ファイルがあります。
  • database: データベースのマイグレーションやシーディングが含まれます。
  • resources: ビューやローカライズされた言語ファイルが置かれます。
  • routes: アプリケーションのルート設定ファイルがあります。

ルーティング

ルーティングは、HTTPリクエストに応じてどのコードが実行されるかを決定する役割を果たします。デフォルトでは、routes/web.phpにルートを定義します。

Route::get('/', function () {
    return view('welcome');
});

このコードは、ルートパス(ホームページ)にアクセスした際にwelcomeビューを返す設定です。

コントローラーとビュー

コントローラーはリクエストの処理ロジックを担当し、ビューは画面に表示される内容を担当します。以下のコマンドでコントローラーを作成します。

php artisan make:controller SampleController

作成されたコントローラー内で以下のように記述することで、ビューを返すことができます。

public function index()
{
    return view('sample');
}

ビューの作成はresources/viewsディレクトリ内に行います。例えば、sample.blade.phpを作成し、HTMLを記述できます。

データベースとEloquent ORM

LaravelではEloquent ORMを使用してデータベースと対話します。Eloquentはモデルクラスを使ってテーブルの各レコードをオブジェクトとして扱います。例えば、Userというモデルを作成するには次のコマンドを使用します。

php artisan make:model User

これにより、app/Models/ディレクトリにUser.phpが作成されます。このモデルを通してデータベースとやり取りが可能です。

$users = App\Models\User::all();

実践例: シンプルなToDoアプリの作成

ここからは、それまでに学んだ内容を使ってシンプルなToDoアプリを作成してみましょう。

データベース設定

まず、データベースを設定します。config/database.phpで、MySQLの設定を自身の環境に合わせて編集してください。その後、マイグレーションファイルを作成します。

php artisan make:migration create_todos_table

マイグレーションファイルには必要なカラムを指定します。

Schema::create('todos', function (Blueprint $table) {
    $table->id();
    $table->string('task');
    $table->boolean('completed')->default(false);
    $table->timestamps();
});

マイグレーションを実行するには以下のコマンドです。

php artisan migrate

コントローラーの設定

次に、Todoコントローラーを作成し、必要なメソッドを追加します。

php artisan make:controller TodoController

メソッド例:

public function index()
{
    $todos = \App\Models\Todo::all();
    return view('todos.index', compact('todos'));
}

ビューの実装

最後に、ビューを作成し、タスクのリストを表示します。

<!-- resources/views/todos/index.blade.php -->
@extends('layouts.app')

@section('content')
    <h1>ToDo List</h1>
    <ul>
        @foreach($todos as $todo)
            <li>{{ $todo->task }} - {{ $todo->completed ? 'Completed' : 'Pending' }}</li>
        @endforeach
    </ul>
@endsection

まとめ

以上が、PHP Laravel入門ガイドとなります。ここで学んだステップを踏めば、基本的なLaravelアプリケーションの作成が可能です。最初は難しく感じるかもしれませんが、実際に手を動かしながら学ぶことで、徐々に理解が深まります。ぜひ、この記事を参考にLaravelを使った開発に挑戦してみてください。Laravelの公式ドキュメントやコミュニティも活用し、さらにスキルを伸ばしていきましょう。

レン (Wren)

こんにちは。レンです。

Laravelのコードの森に住んでいる、小さな案内役です。
ルーティングの枝やクラスの影を歩きながら、コードの流れや仕組みを眺めています。

このサイトでは、Laravelの基本から実装のコツまで、開発で役立つポイントを静かに整理しています。
難しいことを増やすのではなく、コードの見通しが少し良くなるヒントを届けるのが役目です。

「この処理はどこに書くのがいいのか」
「Laravelではどう考えると整理できるのか」

そんな疑問に、小さなメモを残すような気持ちで記事を書いています。

コードを書いている途中で迷ったとき、
このサイトが少し立ち止まって整理できる場所になればうれしいです。

レン (Wren)をフォローする

コメント