thinkphp5 模型关联操作

       
/*          $user = Users::get ( 1 );
         //获取第一个用户的所有信息,返回的是一个$user对像
         echo $user->nickname.'<br>';//把字段变成属性访问
         print_r($user->comm); //这是属性不是方法,返回的是USERS模型的COMM关联对象
         foreach ($user->comm as $comm){
             echo $user->nickname.$comm->content.'<br>';
         } */
        
        
/*         // 查询评论 $user->comm() 返回comm()的关系模型
        
         $comm = $user->comm()->where('content','这是一个问题')->find();
         echo $comm->content.$comm->uid.'<br>'; */
        
        
/*         // 一对多添加评论
        $user = Users::get(1);
        $comment = new Comment();
        $comment->content = 'ThinkPHP5视频教程'.'<br>';
        $comment->add_time = time();
        $user->comm()->save($comment);
        return '添加评论成功!'; */
        
        
/*         // 一对多一次添加多条
         $user = Users::get(1);
         $comment = [
             ['content' => 'Thinkphp5视频教程','add_time' => time()],
             ['content' => '周贵民视频教程','add_time' => time()],
         ];
         $user->comm()->saveAll($comment);
         return '添加comm成功!'; */
        
/*         // 关联查寻
         $user = Users::get(1,'comm');
         print_r($user); */
        
        
/*         // 关联过滤查寻
         $user = Users::get(1);
         $comm = $user->comm()->where('is_show',1)->select();
         print_r($comm);
         foreach ($comm as $value){
            echo $value->content.'<br>';
         } */
        
        
/*          $comm = $user->comm ()->getByContent ( 'Thinkphp5视频教程' );
         echo $comm->content . '<br>'; */
        
        
/*           // 查看有过评论的用户
          $user = Users::has('comm')->select();
          foreach ($user as $user){
              echo $user->user_id.'<br>';
          } */
          
/*         //查看评论过两次的用户
          $user = Users::has ( 'comm', '>=', '2' )->select ();
          foreach ( $user as $user ) {
              echo $user->user_id . '<br>';
          }  */
        
/*         //查寻评论内容含有 这里的东西还不错 的用户
        $user = Users::hasWhere('comm',['content' =>'这里的东西还不错'])->select();
        foreach ( $user as $user ) {
            echo $user->user_id . '<br>';
        }  */
        
        //关联更新
/*         $user = Users::get(1);
        $comm = $user->comm()->getByContent('这里的东西还不错');
        $comm->content = '这是更新过后的内容';
        $comm->save(); */
        
        
        //查寻构造器的更新
/*         $user = Users::get(1);
        $user->comm()->where(['content'=>'ThinkPHP5视频教程'])->update(['content'=>'谢容华']); */
        
        
        //删除部分关联数据
/*         $user = Users::get(1);
        $comm = $user->comm()->where(['content' => '谢容华']);
        $comm->delete(); */
        
        
        //删除某个人的所有的评论
/*         $user = Users::get(1);
        $comm = $user->comm();
        $comm->delete(); */
        
        /* *********************************************************一对一关系统模型****************************************************************** */
        
        //轿车 1对1案例
/*         $user = Users::get(1);
        echo '车品牌:'.$user->car->brand."车牌号:".$user->car->plate_number.'<br>'; */
        
        // 新增用户 关联 汽车
        
/*         $user = new Users;
        $user->email = 'hello@1243.com';
        $user->nickname = 'TPshop';
        $user->password = '123456789';
        if($user->save()){
            $car['brand'] = '奔驰';
            $car['plate_number'] = '粤A12345678';
            $user->car()->save($car); // Relation对象  添加一部车
            return '用户[ ' . $user->nickname . ' ]新增成功';
        } else {
            return $user->getError();
        } */
        
        //一对一关联查寻
/*         $user = Users::get(1); //两个表关联查寻 $user = Users::get(1,'car') 需要查寻的用户ID,以及他们与CAR的关系模型
        echo $user->email.'<br>';
        echo $user->nickname.'<br>';
        echo $user->car->brand.'<br>';
        echo $user->car->plate_number.'<br>'; */
        //一对一关联更新
/*         $user = Users::get(1);
        $user->email = 'xie@qq.com';
        if($user->save()){
            //更新关联数据
            $user->car->plate_number = '川A256220';
            $user->car->save();
            return '更新成功!';
        }else {
            return $user->getError();
        } */
        //一对一关联删除
/*         $user  = Users::get(1);
        if($user->delete()){
            //删除关联数据
            $user->car->delete();
            return '删除成功!';
        }else{
            return $user->getError();
        } */
        
        /* *********************************************************多对多关系统模型****************************************************************** */
        //关联新增加
/*         $region = Region::getByName('北京市');
        $region->shippingArea()->save(['shipping_area_name' => '中国首都2']); */
        
/*         $user = new Users();
        $data = $user->where('user_id',2)->limit(1)->select();
        print_r($data); */

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值