เริ่มต้น Hello World บน Laravel 11

Laravel 11+ by Keptcode.com

Last Updated: 2024-08-24 01:35

Repo: Github.com (รบกวนกด Start ให้ด้วยนะคับ)

https://github.com/coachmaxz/laravel-app

สร้าง Controller ใหม่

Path: [skeleton]\app\Http\Controllers\HelloWorldController.php

Language: PHP

namespace App\Http\Controllers;

class HelloWorldController extends Controller {

  public function index() {
    return view('helloworld.index');
  }

}

สร้างไฟล์ Controller ตั้งชื่อว่า HelloWorldController.php ไว้ในโฟลเดอร์ app\Http\Controllers สามารถพิมพ์คำสั่งตามตัวอย่างด้านบนได้เลย โดยเริ่มต้นประกาศ namespace กันก่อน ตามด้วยชื่อ Class ซึ่งจะต้องตรงกับชื่อไฟล์ด้วย หลังจากนั้น เราก็มาสร้าง Action ขึ้นมาตั้งชื่อเป็น index หรือ ชื่ออะไรก็ได้ตามที่เราต้องการ จากนั้นก็จะเป็นการเรียกไฟล์ view ที่ต้องการแสดงผล

ไฟล์ View จะถูกเก็บไว้ในโฟล์เดอร์ resources\views ทั้งหมด การเรียกใช้งาน กรณีเรียกใช้งานไฟล์ตรง ๆ จะใช้คำสั่ง view(' [file]') ได้เลย แต่หากมีการสร้างโฟลเดอร์แยกออกมา ลักษณะคำสั่งจะเปลี่ยนไปเป็น view(' [folder]. [file]') แทน ส่วนของการตั้งชื่อไฟล์ view จะกำหนดไว้แบบนี้ คือ [file].blade.php หรือ ชื่อไฟล์ตามด้วย .blade.php เสมอ

ไฟล์: HelloWorldController.php

[skeleton]/app/Http/Controllers/HelloWorldController.php

สร้าง View ใหม่

Path: [skeleton]\resources\views\helloworld\index.blade.php

Language: PHP

<h1> Hello World </h1>

สังเกตว่าไฟล์ index.blade.php เราสร้างอยู่ในไฟลเดอร์ "helloworld" เพราะต้อนเราสร้าง Controller, Action เราได้เรียก View เป็น view('helloworld.index') หรือหมายถึงไฟล์ helloworld\index.blade.php นั่นเอง

เพิ่ม Route เส้นใหม่

Path: [skeleton]\routes\web.php

Language: PHP

// เรียกใช้งาน HelloWorldController
use App\Http\Controllers\HelloWorldController;

// สร้าง Route ใหม่
// GET: http://127.0.0.1:8000/hello
Route::get('/hello', [ 
  HelloWorldController::class, 'index',
]);

เพิ่ม Route /hello เรียกใช้งาน HelloWorldController ตามด้วย action ที่ต้องการเรียกใช้ คือ index นั่นเอง

ไฟล์: web.php

[skeleton]/routes/web.php