美文网首页
Eloquent基础用法

Eloquent基础用法

作者: GQ1994 | 来源:发表于2016-10-31 16:17 被阅读0次

    Eloquent基础用法

    一、创建usermodel

    执行命令:

     php artisan make:model user
    

    二、app目录下出现User.php

    <?php
    
    namespace App;
    
    use Illuminate\Foundation\Auth\User as Authenticatable;
    
    class User extends Authenticatable
    {
        /**
         * The attributes that are mass assignable.
         *
         * @var array
         */
        protected $primaryKey='user_id';//设置主键为"user_id",默认为"id"
        protected $guarded = ['user_id'];//设置user_id字段不可以被重写
    
        /**
         * The attributes that should be hidden for arrays.
         *
         * @var array
         */
        protected $hidden = [//执行查询不会显示的字段
            'password', 'remember_token',
        ];
        public function userTest(){
    //        return $this->find(5);//查找主键为“5”的数据,不存在返回空
    //        return $this->findOrFail(5);//查找主键为“5”的数据,不存在会报错
    //        return $this->where('username','郭庆')->get();//查找用户名为郭庆的数据
    //        return $this->where('user_id','>','1')->get();//查找id大于1的数据
    
        }
    }
    

    三、在入口文件调用

    Route::get('mysql',function(){
       $user=new App\User();
        return $user->userTest();
    });
    

    四、数据的增删改

    1. 直接添加数据

       public function userAdd(){
           $this->username='lisi';
           $this->age=13;
           $this->save();
       }
      

      使用数组添加数据

        public function userAdd(){
             $data=['username'=>'撒媳妇','age'=>100];
             $this->fill($data);//填充数据
             $this->save();
         }
      
    2. 单条删除:

       public function userDelete(){
             $users=$this->find(10);
             $users->delete();
       }
      

      批量删除:

       public function userDelete(){
               $users=$this->where('age','<',30);
               $users->delete();
           }
      
    3. 单条修改:

       public function userUpdate(){
               $user=$this->find(5);
               $user->username='sb';
               $user->age=29;
               $user->save();
           }
      

      批量修改:

       public function userUpdate(){
               $users=$this->where('age','<',30);
               $users->update(['username'=>'小屁孩']);
           }
      

    五、集合

    $arr=['one'=>1,2,3,4,5];
    $collection=collect($arr);
    $r=$collection->contains('one');//判断是否有这个值
    $r=$collection->has('one');//判断是否有这个键
    $r=$collection->take(2);//取出前俩个值
    $r=$collection->take(-2);//取出后俩个值    
    return $r?'有':'没有';
    

    其余方法参见手册:
    https://laravel.com/docs/5.3/collections

    相关文章

      网友评论

          本文标题:Eloquent基础用法

          本文链接:https://www.haomeiwen.com/subject/vbggyttx.html