0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PHP備忘録:はじめてのLaravelコントローラ+Blade連携をしてみた

Posted at

はじめに

Laravel を使って Web アプリケーション開発を学びながら、コントローラから Blade テンプレートを返す方法と、テンプレートに変数を渡す方法についてまとめます。

書こうと思ったきっかけ

個人的に PHP のキャッチアップをしたくて、勉強している初学者による備忘録としてください。

参考文献

内容

1. HelloController を修正する

まず、コントローラでビューを返すように書き換えます。

ファイル: src/app/Http/Controllers/HelloController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HelloController extends Controller
{
    public function index()
    {
        // Bladeビュー「hello」に 'name' を渡す
        return view('hello', ['name' => '太郎']);
    }
}

view('hello')resources/views/hello.blade.php を指します。

2. Bladeファイルを作成する

テンプレート(HTML+埋め込み変数)を用意します。

ファイル: src/resources/views/hello.blade.php

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>Helloページ</title>
</head>
<body>
    <h1>こんにちは、{{ \$name }}さん!</h1>
</body>
</html>

{{ $name }} はPHPで渡した ['name' => '太郎'] によって「こんにちは、太郎さん!」と表示されます。

3. ルーティングの確認(既にOKならスキップ)

ファイル: src/routes/web.php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\HelloController;

Route::get('/hello', [HelloController::class, 'index']);

4. Laravelキャッシュクリア(念のため)

コンテナ内で以下を実行しておくと安心です:

make cache-clear

5. 確認

ブラウザで以下のURLにアクセス:

http://localhost:8080/hello

表示結果

Screenshot 2025-05-04 at 18.02.23.png

まとめ

この手順で Laravel のコントローラから Blade テンプレートを返し、変数を渡す基本的な仕組みを学ぶことができました。

個人の備忘録程度の走り書きとなっておりますが、温かい目で見守っていただければ幸いです。

次はフォーム送信やレイアウト共通化、データベースとの連携など、さらに実用的な機能にチャレンジしていきたいと思います...!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?