這篇文章主要介紹Laravel中10種用法示例,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
成都創(chuàng)新互聯(lián)專注于南岳企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),購物商城網(wǎng)站建設(shè)。南岳網(wǎng)站建設(shè)公司,為南岳等地區(qū)提供建站服務(wù)。全流程按需策劃設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
1. 在 find 方法中指定屬性
User::find(1, ['name', 'email']); User::findOrFail(1, ['name', 'email']);
2. Clone 一個(gè) Model
用 replicate 方法可以克隆一個(gè) Model
$user = User::find(1); $newUser = $user->replicate(); $newUser->save();
3. 判斷兩個(gè) Model 是否相同
檢查兩個(gè) Model 的ID是否相同用 is 方法
$user = User::find(1); $sameUser = User::find(1); $diffUser = User::find(2); $user->is($sameUser); // true $user->is($diffUser); // false;
4. 重新加載一個(gè) Model
$user = User::find(1); $user->name; // 'Peter' // 如果 name 更新過,比如由 peter 更新為 John $user->refresh(); $user->name; // John
5. 加載新的 Model
$user = App\User::first();$user->name; // John // $updatedUser = $user->fresh(); $updatedUser->name; // Peter $user->name; // John
6. 更新帶關(guān)聯(lián)的 Model
在更新關(guān)聯(lián)的時(shí)候,使用 push 方法可以更新所有 Model
class User extends Model{ public function phone() { return $this->hasOne('App\Phone'); }}$user = User::first(); $user->name = "Peter"; $user->phone->number = '1234567890'; $user->save(); // 只更新 User Model $user->push(); // 更新 User 和 Phone Model
7. 自定義軟刪除字段
Laravel 默認(rèn)使用 deleted_at 作為軟刪除字段,我們通過以下方式將 deleted_at 改成 is_deleted
class User extends Model{ use SoftDeletes; * deleted_at 字段. * * @var string */ const DELETED_AT = 'is_deleted';}
或者使用訪問器
class User extends Model{ use SoftDeletes; public function getDeletedAtColumn(){ return 'is_deleted'; }}
8. 查詢 Model 更改的屬性
$user = User::first(); $user->name; // John $user->name = 'Peter'; $user->save(); dd($user->getChanges());// 輸出: [ 'name' => 'John', 'updated_at' => '...' ]
9. 查詢 Model 是否已更改
$user = User::first(); $user->name; // John $user->isDirty(); // false $user->name = 'Peter'; $user->isDirty(); // true $user->getDirty(); // ['name' => 'Peter'] $user->save(); $user->isDirty(); // false
getChanges() 與 getDirty() 的區(qū)別
getChanges() 方法用在 save() 方法之后輸出結(jié)果集
getDirty() 方法用在 save() 方法之前輸出結(jié)果集
10. 查詢修改前的 Model 信息
$user = App\User::first(); $user->name; //John $user->name = "Peter"; //Peter $user->getOriginal('name'); //John $user->getOriginal(); //Original $user record
以上是“Laravel中10種用法示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!