[关闭]
@52fhy 2016-04-28T11:51:36.000000Z 字数 1650 阅读 499

Eloquent ORM

PHP


基本操作

新增

  1. $user = new User;
  2. $user->name = 'John';
  3. $user->save();
  4. $insertedId = $user->id;//从对象取得 id 属性值

使用模型的 Create 方法

  1. class User extends Model {
  2. protected $guarded = ['id', 'account_id'];//黑名单,不会被更新
  3. }
  4. // 在数据库中建立一个新的用户...
  5. $user = User::create(['name' => 'John']);
  6. // 以属性找用户,若没有则新增并取得新的实例...
  7. $user = User::firstOrCreate(['name' => 'John']);
  8. // 以属性找用户,若没有则建立新的实例...
  9. $user = User::firstOrNew(['name' => 'John']);

删除

  1. $this->where($where)->delete();
  2. 或者
  3. $user = User::find(1);
  4. $user->delete();

更新

  1. return $this->where($where)->update($data);
  2. 或者
  3. $user = User::find(1);
  4. $user->update($data);

查找

  1. //取出所有记录,all()得出的是对象集合,可以遍历
  2. $this->all()->toArray();
  3. //根据主键取出一条数据
  4. $one = $this->find('2');
  5. return array(
  6. $one->id,
  7. $one->title,
  8. $one->content,
  9. );
  10. //查找id=2的第一条数据
  11. $this->where('id', 2)->first()->toArray();
  12. //查找id>0的所有数据
  13. $this->where('id', '>', '0')->get()->toArray();
  14. //查找id>0的所有数据,降序排列
  15. $this->where('id', '>', '0')->orderBy('id', 'desc')->get()->toArray();
  16. //查找id>0的所有数据,降序排列,计数
  17. $this->where('id', '>', '0')->orderBy('id', 'desc')->count();
  18. //offset,limit
  19. $this->where('id', '>', '0')->orderBy($order[0], $order[1])->skip($offset)->take($limit);
  20. //等同于
  21. $this->where('id', '>', '0')->orderBy($order[0], $order[1])->offset($offset)->limit($limit);

更多:

  1. //条件类:
  2. where('id', '>', '0')
  3. where('id', '>=', '0')
  4. where('id', '<', '0')
  5. where('id', '<=', '0')
  6. where('id', 'like', 'name%')
  7. whereIn($key, $array)
  8. whereNotIn($key, $array)
  9. whereBetween($key, $array)
  10. whereNotBetween($key, $array)
  11. orWhereIn($key, $array)
  12. orWhereNotIn($key, $array)
  13. orWhereBetween($key, $array)
  14. orWhereNotBetween($key, $array)
  15. //结果方法:Illuminate\Database\Query\Builder
  16. first()取第一个
  17. get()取所有
  18. all()取所有(无条件)
  19. //聚合方法
  20. count()统计
  21. avg()求平均值
  22. sum()
  23. max()
  24. min()

Eloquent ORM - Laravel 中文文档
http://laravel-china.org/docs/5.0/eloquent

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注