3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
Eloquent Eager loading PHP:7.2 Laravel:5.7 在 Eloquent 中,可以透過 Model 的 Relationships 取得不同 Table 之間對應的資料。 而取得的方式又細分為兩種:Eager loading、Lazy Eager loading 模式。 Eager loading – with() 這是最廣泛使用的方法,就是在拿資料時,透過 with(),一次把關聯的資料全部拉出來。 範例 $albums = Album::with(['songs'])->limit(10)->get(); 使用 with 會執行以下 SQL query: select * from `album` where `album`.`deleted_at` is null select * from `song` where `song`.`album_id` in (1, 2, 3, 4, 5) and `song`.`deleted_at` is null Lazy Eager loading – load() 當不是所有資料都需要把關聯資料取出來時,考量到不必要的效能花費,可以使用 load() 方法,真正需要時才去 DB 拿關聯資料。 範例 $albums = Album::all(); if ($someCondition) { $albums->load('song'); } 如果沒有進入條件判斷式,只會執行以下 SQL query: select * from `album` where `album`.`deleted_at` is null Categories: Laravel Tags: LaravelPHP 分類 Android AngularJS Chrome Database MySQL DataStructure Editor Vim Firefox Git Hadoop Language Go Java JavaScript jQuery jQueryChart Node.js Vue PHP Laravel ZendFramework Python Mac Network Cisco DLink Juniper Oauth Server Apache Share Unix FreeBSD Linux WebDesign Bootstrap CSS HTML Wordpress Search 搜尋:

本文由blogjohnsonluorg提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦