非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

【Laravel】コントローラにパラメータを渡す

   

前回、コントローラーの基本形について書きました。今回はコントローラーにパラメーターを渡す方法について紹介します。

前回作成したHelloController.phpに以下の赤枠の部分を加えます。index関数で2つのパラメータ($user, $pass)を受取りHTML上で表示させます。

 

ソースコード全文はこちらです。

<?php
namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HelloController extends Controller{
    public function index($user='noname', $pass='unknown'){
        return <<<EOF
        <!DOCTYPE html>
        <html lang="en">
        <head>
           <title>Controller Test</title>
        </head>
        <body>
           <h1>Controller Test</h1>
           <p>{$user}</p>
           <p>{$pass}</p>
        </body>
        </html>

        EOF;
    }
}
 

 

次にweb.phpで以下のように記述します。

Route::get('hello/{user?}/{pass?}/', 'App\Http\Controllers\HelloController@index');
 

 

以下のコマンドでサーバーを立ち上げます。

$ php artisan serve
 

 

http://127.0.0.1:8000/hello/taro/suzuki/ をブラウザで開いてみましょう。もちろんパラメータ部分(赤い部分)は任意の文字列でOKです。

以下のように表示されたら成功です。

 

スポンサーリンク

 - Laravel