laravel5.6 框架操作數(shù)據(jù) Eloquent ORM用法示例
本文實(shí)例講述了laravel5.6 框架操作數(shù)據(jù) Eloquent ORM用法。分享給大家供大家參考,具體如下:
建立Users模型
<?php
namespace App\Model\Eloquent\Admin;
use Illuminate\Database\Eloquent\Model;
class Users extends Model
{
//指定表名
protected $table="users";
//指定id
protected $primaryKey="id";
//指定允許批量的字段
protected $fillable=['name','age'];
//指定不允許批量賦值的字段
protected $guarded=[];
//連接多數(shù)據(jù)庫(kù)配置 默認(rèn)使用'mysql'
protected $connection = 'mysql';
//自動(dòng)維護(hù)時(shí)間戳 默認(rèn)是'true'
public $timestamps=true;
//返回當(dāng)前時(shí)間的時(shí)間戳,進(jìn)入數(shù)據(jù)庫(kù),輸出時(shí),可以輸出格式化好的時(shí)間
protected function getDateFormat()
{
return time();
}
//設(shè)置之后,返回的就是數(shù)據(jù)表中的時(shí)間戳
protected function asDateTime($value)
{
return $value;
}
}
引用Users模型
use App\Model\Eloquent\Admin\Users;
ORM 查
//all() 查詢所有數(shù)據(jù) 查詢數(shù)據(jù)為集合
$data=Users::all();
//根據(jù)[$id]主鍵查詢 查詢一條數(shù)據(jù)
$data=Users::find($id);
//findOrFail() 根據(jù)主鍵查詢 如果沒(méi)有查到 報(bào)錯(cuò)
$data=Users::findOrFail($id);
//get() 查詢所有數(shù)據(jù)
$data=Users::get();
//first() 查詢第一條
$data=Users::where('id','>','1')->orderBy('age','desc')->first();
//chunk() 每次查詢指定[$num]條數(shù)
Users::chunk($num,function($data){
print_r($data);
});
//聚合函數(shù)
//count() 統(tǒng)計(jì)記錄條數(shù)
$num = Users::count();
//max() 查詢最大值 min() 查詢最小值
$max=Users::where('id','>',1)->max('age');
ORM 增
//save() 單增 $data = new Users(); $data->name = 'admin_a'; $data->age = 100; $data->save(); //create() 多增 $ret=Users::create([ 'name'=>'admin_b', 'age'=>200 ]); //firstOrCreate()以屬性查詢數(shù)據(jù) 如果沒(méi)有 新建數(shù)據(jù) $ret=Users::firstOrCreate([ 'name'=>'admin_c', 'age'=>300 ]); //firstOrNew() 以屬性查詢數(shù)據(jù) 如果沒(méi)有 新建實(shí)例 如果想保存調(diào)用save() $ret=Users::firstOrNew([ 'name'=>'admin_d', 'age'=>400 ]); $ret->save();
ORM 改
//獲取主鍵id,模型修改數(shù)據(jù)
$data=Users::find($id);
$data->name ='admin_e';
$data->age =66;
$data->save();
//批量修改
$ret=Users::where('id','>',2)->update(
['age'=>33]
);
ORM 刪
//獲取主鍵id,模型刪除單條
$data=Users::find($id);
$data->delete();
//通過(guò)主鍵刪除多條
$ret=Users::destroy(1,2,3);
$ret=Users::destroy([4,5,6]);
//刪除指定條件
$ret=Users::where('id','>',2)->delete();
laravel5.6 操作數(shù)據(jù)查詢構(gòu)建器
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
新浪SAE云平臺(tái)下使用codeigniter的數(shù)據(jù)庫(kù)配置
這篇文章主要介紹了新浪SAE云平臺(tái)下使用codeigniter的數(shù)據(jù)庫(kù)配置,主要涉及在database.php的配置,需要的朋友可以參考下2014-06-06
ThinkPHP模板中判斷volist循環(huán)的最后一條記錄的驗(yàn)證方法
這篇文章主要介紹了ThinkPHP模板中判斷volist循環(huán)的最后一條記錄的驗(yàn)證方法,需要的朋友可以參考下2014-07-07
laravel 數(shù)據(jù)遷移與 Eloquent ORM的實(shí)現(xiàn)方法
laravel 提供了很實(shí)用的 Eloquent ORM 模型類,簡(jiǎn)單、直觀的與數(shù)據(jù)庫(kù)進(jìn)行交互。同時(shí)使用數(shù)據(jù)遷移管理數(shù)據(jù)庫(kù),可以與團(tuán)隊(duì)進(jìn)行共享以及編輯,本文詳細(xì)的介紹了laravel 數(shù)據(jù)遷移與 Eloquent ORM的實(shí)現(xiàn)方法,感興趣的可以了解一下2019-04-04
Laravel框架實(shí)現(xiàn)的記錄SQL日志功能示例
這篇文章主要介紹了Laravel框架實(shí)現(xiàn)的記錄SQL日志功能,結(jié)合實(shí)例形式總結(jié)分析了Laravel框架監(jiān)聽(tīng)并記錄SQL相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2018-06-06
php redis實(shí)現(xiàn)對(duì)200w用戶的即時(shí)推送
這篇文章主要為大家詳細(xì)介紹了php redis實(shí)現(xiàn)對(duì)200w用戶的即時(shí)推送,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
php mysql數(shù)據(jù)庫(kù)操作類(實(shí)例講解)
本白演示的代碼屬于較為簡(jiǎn)單的數(shù)據(jù)庫(kù)封裝類,較適合初學(xué),需要的朋友可以參考下2017-08-08
國(guó)產(chǎn)PHP開(kāi)發(fā)框架myqee新手快速入門教程
這篇文章主要介紹了國(guó)產(chǎn)PHP開(kāi)發(fā)框架myqee新手快速入門教程,myqee中文名稱邁啟PHP框架,有比較多的高級(jí)開(kāi)發(fā)特性,需要的朋友可以參考下2014-07-07
PHP 實(shí)現(xiàn)字符串翻轉(zhuǎn)(包含中文漢字)的實(shí)現(xiàn)代碼
本篇文章主要介紹了PHP 實(shí)現(xiàn)字符串翻轉(zhuǎn)(包含中文漢字)的實(shí)現(xiàn)代碼,在PHP面試題中經(jīng)常遇到,有興趣的可以了解一下。2017-04-04

