laravel 操作數據庫一般都使用它的Eloquent ORM才操作
建立模型
?phpnamespace App;use Illuminate/Database/Eloquent/Model;html' target='_blank'>class Student extends Model //指定表名 默認 模型名的復數 protected $table= student //指定主鍵 默認主鍵 為ID protected $primaryKey= id //指定允許批量賦值的字段 protected $fillable=[ name , age //指定不允許批量賦值的字段 protected $guarded=[]; //是否維護時間戳 默認維護 //$timestamps=falst 不維護 public $timestamps=true; //維護時間的時候保存時間戳 protected function getDateFormat() return time(); // TODO: Change the autogenerated stub //查詢的時候返回時間戳 protected function asDateTime($value)// return parent::asDateTime($value); // TODO: Change the autogenerated stub return $value;}
ORM 查詢
//all() 查詢所有數據 查詢數據為集合 $students=Student::all(); dd($students); //根據主鍵查詢 查詢一條數據 $student=Student::find(2); dd($student); //findOrFail() 根據主鍵查詢 如果沒有查到 報錯 $student=Student::findOrFail(2); dd($student); //get() 查詢所有數據 $students=Student::get(); dd($students); //first() 查詢第一條 $students=Student::where( id , , 1 )- orderBy( age , desc )- first(); dd($students); //chunk() 每次查詢一定條數 Student::chunk(2,function($students){ var_dump($students); //聚合函數 //count() 條數 $num = Student::count(); var_dump($num); //max() 查詢最大值 $max=Student::where( id , ,1)- max( age var_dump($max);
添加
//新增 //save() $student=new Student(); $student- name= vbb $student- age=34; $rs=$student- save(); dd($rs); //create() $rs=Student::create([ name = momo , age = 23 dd($rs); //firstOrCreate()以屬性查詢數據 如果沒有 新建數據 $rs=Student::firstOrCreate( [ name = vbb4 ] //firstOrNew() 以屬性查詢數據 如果沒有 新建實例 如果想保存調用save() $rs=Student::firstOrNew( [ name = vbb4 ] $bool=$rs- save(); dd($rs);
更新
//更新 //通過模型更新數據 $student=Student::find(2); $student- age=2; $bool=$student- save(); var_dump($bool); //批量更新 $num=Student::where( id , ,5)- update( [ age = 41] var_dump($num);
刪除
//刪除 //通過模型刪除 $student=Student::find(2); $bool=$student- delete(); var_dump($bool); //通過主鍵刪除 $num=Student::destroy(3,4,5); $num=Student::destroy([3,4,5]); var_dump($num); //刪除指定條件 $num=Student::where( id , ,7)- delete(); var_dump($num);
以上就是Laravel數據庫操作Eloquent ORM方法小結(代碼示例)的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答