PHP フレームワーク Laravel 8 : ルート設定

※ 以下のフォルダに Laravel をインストールしたこととする。
C:\Site01
※ 以下のコマンドを実行し HTTP サーバを起動したこととする。
(ブラウザで「http://127.0.0.1/」へアクセスしたら表示される)
C:\Site01> php artisan serve
※ ルート設定は「C:\Site01\routes\web.php」に記載する。
1.  ブラウザで「http://127.0.0.1/」へアクセスした場合の内容を変更する。
// 直接出力。
Route::get( '/', function()
{
return 'Hello world!';
} );
// blade を使用して出力。
Route::get( '/', function()
{
return view( 'hello' );
} );
// コントローラを使用して出力。(Laravel 8)
Route::get( '/', [ HelloController::class, 'showhello' ] );
// コントローラを使用して出力。
Route::get( '/', 'HelloController@showhello' ] );
2.  引数を 1 つ受け取る場合。ブラウザは「http://127.0.0.1/mike」の様にアクセスする(「mike」は仮で任意の文字列を指定する事ができます)。
// 直接出力。
Route::get( '/{name}', function( $name )
{
return 'Name: ' . $name;
} );
// blade を使用して出力。
Route::get( '/{name}', function( $name )
{
return view( 'hello1', compact('name') );
} );
// コントローラを使用して出力。(Laravel 8)
Route::get( '/', [ HelloController::class, 'showhello1' ] );
// コントローラを使用して出力。
Route::get( '/', [ 'HelloController@showhello1' ] );
3.  引数を 2 つ以上受け取る場合。ブラウザは「http://127.0.0.1/mike/16」の様にアクセスする(「mike」「16」は仮で任意の文字列を指定する事ができます)。
// 直接出力。
Route::get( '/{name}/{age}', function( $name, $age )
{
return 'Name: ' . $name . '<br />Age: ' . $age;
} );
// blade を使用して出力。
Route::get( '/{name}/{age}', function( $name, $age )
{
return view( 'hello2', compact('name', 'age') );
} );
// コントローラを使用して出力。(Laravel 8)
Route::get( '/', [ HelloController::class, 'showhello2' ] );
// コントローラを使用して出力。
Route::get( '/', [ 'HelloController@showhello2' ] );
4.  サブフォルダで表示する場合。ブラウザは「http://127.0.0.1/userinf/」の様にアクセスする。
// 直接出力。
Route::get( '/userinf', function()
{
return 'User information.';
} );
// blade を使用して出力。
Route::get( '/userinf', function()
{
return view( 'userinf' );
} );
// コントローラを使用して出力。(Laravel 8)
Route::get( '/userinf', [ HelloController::class, 'showhello' ] );
// コントローラを使用して出力。
Route::get( '/userinf', [ 'HelloController@showhello' ] );
5.  サブフォルダで引数を 2 つ以上受け取る場合。ブラウザは「http://127.0.0.1/userinf/mike/16」の様にアクセスする(「mike」「16」は仮で任意の文字列を指定する事ができます)。
// 直接出力。
Route::get( '/userinf/{name}/{age}', function( $name, $age )
{
return 'Name: ' . $name . '<br />Age: ' . $age;
} );
// blade を使用して出力。
Route::get( '/userinf/{name}/{age}', function( $name, $age )
{
return view( 'hello2', compact('name', 'age') );
} );
// コントローラを使用して出力。(Laravel 8)
Route::get( '/userinf', [ HelloController::class, 'showhello2' ] );
// コントローラを使用して出力。
Route::get( '/userinf', [ 'HelloController@showhello2' ] );
6.  コントローラ HelloController(HelloController クラス)の内容を以下に示す。
namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HelloController extends Controller
{
    public function showhello()
    {
        return 'Hello world!';
    }

    public function showhello1( $name )
    {
        return 'Name: ' . $name;
    }

    public function showhello2( $name, $age )
    {
        return 'Name: ' . $name . '<br />Age: ' . $age;
    }
}

 以上です。