本文實(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() 查詢(xún)所有數(shù)據(jù) 查詢(xún)數(shù)據(jù)為集合
$data=Users::all();
//根據(jù)[$id]主鍵查詢(xún) 查詢(xún)一條數(shù)據(jù)
$data=Users::find($id);
//findOrFail() 根據(jù)主鍵查詢(xún) 如果沒(méi)有查到 報(bào)錯(cuò)
$data=Users::findOrFail($id);
//get() 查詢(xún)所有數(shù)據(jù)
$data=Users::get();
//first() 查詢(xún)第一條
$data=Users::where('id','>','1')->orderBy('age','desc')->first();
//chunk() 每次查詢(xún)指定[$num]條數(shù)
Users::chunk($num,function($data){
print_r($data);
});
//聚合函數(shù)
//count() 統(tǒng)計(jì)記錄條數(shù)
$num = Users::count();
//max() 查詢(xún)最大值 min() 查詢(xún)最小值
$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()以屬性查詢(xún)數(shù)據(jù) 如果沒(méi)有 新建數(shù)據(jù)
$ret=Users::firstOrCreate([
'name'=>'admin_c',
'age'=>300
]);
//firstOrNew() 以屬性查詢(xún)數(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ù)查詢(xún)構(gòu)建器
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Laravel框架入門(mén)與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Laravel 手動(dòng)開(kāi)關(guān) Eloquent 修改器的操作方法
- laravel框架數(shù)據(jù)庫(kù)操作、查詢(xún)構(gòu)建器、Eloquent ORM操作實(shí)例分析
- Laravel框架Eloquent ORM新增數(shù)據(jù)、自定義時(shí)間戳及批量賦值用法詳解
- Laravel框架Eloquent ORM簡(jiǎn)介、模型建立及查詢(xún)數(shù)據(jù)操作詳解
- Laravel框架Eloquent ORM修改數(shù)據(jù)操作示例
- Laravel Eloquent分表方法并使用模型關(guān)聯(lián)的實(shí)現(xiàn)
- laravel7學(xué)習(xí)之無(wú)限級(jí)分類(lèi)的最新實(shí)現(xiàn)方法
- laravel admin實(shí)現(xiàn)分類(lèi)樹(shù)/模型樹(shù)的示例代碼
- 如何使用Laravel Eloquent來(lái)開(kāi)發(fā)無(wú)限極分類(lèi)