Hello World出力(Laravel11)

# 概要
Laravel11の環境でHello World出力ついて確認してみましょう。
事前準備は以下の記事から確認してください。

# 事前準備

１．RaspberryPIの本体（RPI３B以上）
２．最新OSをインストール済
３．Laravel環境を構築
４．サンプルソースをgitからダウンロード

■Raspberry PIにLaravel11をインストール

https://qiita.com/neomi/items/ffb54af8b5597b3fc54d

# Visual Studio Codeの拡張プラグインを確認
以下の拡張プラグインをインストールする（当時：バージョン）
・Japanese Language Pack for Visual Studio Code v1.93.2024091109
・Laravel Blade Snippets v.1.36.1
・Laravel Artisan v0.0.31
・Laravel goto view v1.3.11
・PHP Debug v1.35.0
・PHP IntelliSense v1.3.3
・PHP Namespace Resolver v1.1.9
・Remote-SSH v0.115.1
・Remote-SSH:Editing Configuration Files v0.87.0
・Remote Exploer v0.4.3
・vscode-icons v12.9.0
・DotEnv v1.0.1

# 前回のサンプルソースを表示
RaspberryPIへSSHプロトコルで接続した画面です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/b79e8632-fd14-6b6e-726c-47a95357b97c.png)

# ディレクトリ構成
下記のディレクトリがLaravelプロジェクトのディレクトリ構成になります。
各ディレクトリについては使う場面で説明していきます。
まずWEBにて公開されるディレクトリは「public」です。Linux上でApacheの「/var/www/html」がこのディレクトリに該当します。
~~~php
application
 -app
 -bootstrap
 -config
 -database
 -public
 -resources
 -routes
 -storage
 -tests
 -vendor
 -.env
~~~

# サンプルソースの初期ページを確認
以下のコマンドをサンプルソースディレクトリで実行します。

①artisanを実行します。
/home/pi/workspace/example-app
php artisan serve --host [raspberry pi ip]
②コマンドの実行例です。
~~~bash
pi@RPI3B:~/workspace/example-app $ /bin/php artisan serve --host 192.168.1.65

   INFO  Server running on [http://192.168.1.65:8000].

  Press Ctrl+C to stop the server
~~~

③ブラウザを起動して次のURLを確認します。
URLをブラウザにコピーして貼り付けるとLaravelの初期ページが表示されます。
確認URL:http://192.168.1.65:8000
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/0e7d9743-f9b2-b8f2-0eaa-0972c590abbb.png)

# 表示されているテキストを変更して再表示
①「public」ディレクトリのindex.phpの内容を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/20e9078e-4d56-8321-18cb-bdd60b209259.png)

②「resource-views」のwelcome.blade.phpファイルを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/915e6cb6-56a6-3ddf-a364-7192e1a257af.png)

③初期ページに表示されている「Laracasts」文字列を「Laravel TEST」に変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/13076f30-f5aa-9719-c5e6-dccd00dafc04.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/8c78d1e7-1046-1987-455c-e06f1a687848.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/5d03f451-32c4-1a78-58d6-e02518367c58.png)
④変更した内容を保存した後、ブラウザにてF5キーを押下します。
「Laracasts→Laravel TEST」に変更されて表示されていることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/b855fe63-7394-79e3-ed46-1534a1c5307e.png)

# routesにパスを追加して画面表示
①プロジェクトのディレクトリ構成の中で「routes-web.php」を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/44e17e3e-81dc-b685-a683-5a3f122a0d11.png)
②次のコードを追加します。
~~~php
Route::get('/hello', function () {
    return 'Hello Wrold!';
});
~~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/dd70c2c8-ed8d-65bc-dcaf-15539fb761b0.png)
③次のURLをブラウザに入力してアクセスします。
http://192.168.1.65:8000/hello

④以下のように「Hello World!」」が表示されます。
このようにパスを変更して別のページをアクセスすることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/dc294c7f-531d-c01a-03b1-f8c78729ded9.png)

# response Helperを利用して「Hello World!」を出力
①次のようにコードを修正します。
~~~php
Route::get('/hello', function () {
    return response('Hello Wrold!',404);
});
~~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/0f29c8da-1f6d-2e1d-09e7-c52e66c0bef3.png)
②次のURLをブラウザに入力してアクセスします。
http://192.168.1.65:8000/hello
③前回の「Hello World!」と同じ表示ではありますが、Chromeブラウザで「F12」キーを押下して次のように画面を確認するとStatus　Codeも画面へ設定が可能でした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/eff948e5-e3ff-4701-0893-c518fecbe151.png)

④Status　Codeを「200」に設定して再表示してみます。(F5キーを押下）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/b114add5-d796-96ae-9acb-fa1fa2932fef.png)

⑤画面を再度確認します。(F5キーを押下）
次のようにStatus　Codeが「200」に表示されていることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/41e7f1d3-d422-1ebb-03c5-1f9ebc5f1c95.png)

# HTMLタグを追加でフォントサイズを大きく設定して表示
①次のHTMLタグを追加します。
~~~php
Route::get('/hello', function () {
    return response('<h1>Hello Wrold!</h1>',200);
});
~~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/838a0fdb-0dac-c573-39cd-71ac19880a03.png)
②次のURLをブラウザに入力してアクセスします。
http://192.168.1.65:8000/hello
③画面を再度確認します。(F5キーを押下）
次のように「Hello World!」フォントが大きく表示されていることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/e8c759c7-3fb0-7bb3-93ea-02fdcf38b3c5.png)

# WEBページのContent-typeを「text/plain」に指定して表示
①次のコードをソースに追加します。
~~~php
Route::get('/hello', function () {
    return response('<h1>Hello Wrold!</h1>',200)
    ->header('Content-type','text/plain');
});
~~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/20a3bfb6-721f-2bf7-e191-fe76d02b0bb5.png)

②次のURLをブラウザに入力してアクセスします。
http://192.168.1.65:8000/hello

③画面を再度確認します。(F5キーを押下）
次のようにHTMLタグがそのままテキストとして表示されていることが確認できます。
Content-Typeは「text/plain; charset=UTF-8」になっていることも確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/5534ba2f-1f65-d48e-1713-1bbc6bc83197.png)

# ブラウザのヘッダーにキーと値を設定して表示
①次のコードをソースに追加します。
~~~php
Route::get('/hello', function () {
    return response('<h1>Hello Wrold!</h1>',200)
    ->header('Content-type','text/plain')
    ->header('headerValue','12345667890');
});
~~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/931aa9b8-2cc7-669b-fa60-c8f06dcefa3c.png)
②次のURLをブラウザに入力してアクセスします。
http://192.168.1.65:8000/hello

③画面を再度確認します。(F5キーを押下）
次のように「'headerValue'キーに'1234567890'が設定されていることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/162336/6ae07a97-44b0-a57c-ad82-f0a23be7b90f.png)

# 終わりに
今回は単純に画面上にテキスト変更及びStatus Codeを設定、response Helperを利用して画面表示について知ることができました。
Laravelのフレームワークは色々便利な機能がありますね。
今日はここまでです。ありがとうございます。