iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0
Modern Web

Laravel 30天速成筆記系列 第 7

【Day7】使用 Eloquent ORM 操作資料庫

  • 分享至 

  • xImage
  •  

今天是第一週的最後一天~我們要學 Laravel 的超強資料庫功能 Eloquent ORM,能讓我們不用寫複雜的 SQL,就能用簡單的 PHP 語法操作資料庫!!


什麼是 ORM?

ORM = 物件關聯對應(Object Relational Mapping)
你可以把它想成「翻譯員」:

  • PHP 程式(物件)說的是「人話」
  • 資料庫(表格)說的是「SQL 語言」
  • ORM 負責把兩者互相翻譯,讓你直接用 PHP 操作資料庫

準備資料表

先確保 .env 已設定資料庫連線,例如:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_demo
DB_USERNAME=root
DB_PASSWORD=

建立一個 posts 資料表:

php artisan make:model Post -m

這會建立:

app/Models/Post.php(Eloquent Model)

database/migrations/xxxx_xx_xx_create_posts_table.php(資料表建立檔)

編輯 Migration:

public function up()
{
    Schema::create('posts', function (Blueprint $table) {
        $table->id();
        $table->string('title');
        $table->text('content');
        $table->timestamps();
    });
}

執行:

php artisan migrate

新增資料(Create):

Post::create([
    'title' => '我的第一篇文章',
    'content' => '這是文章內容'
]);

讀取資料(Read)

$posts = Post::all();
foreach ($posts as $post) {
    echo $post->title;
}

更新資料(Update)

$post = Post::find(1);
$post->title = '修改後的標題';
$post->save();

刪除資料(Delete)

$post = Post::find(1);
$post->delete();

小結

  • Eloquent ORM = 幫你用 PHP 語法操作資料庫的翻譯員
  • Model 代表一個資料表
  • create() 新增、all() 讀取、save() 更新、delete() 刪除

完全不需要自己寫 SQL!


上一篇
【Day6】Blade 模板引擎
下一篇
【Day8】Migration 基礎篇
系列文
Laravel 30天速成筆記9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言