[PHP][thinkphp5] 学习一:增删改查

本文通过一个简单的ThinkPHP5应用示例介绍了如何进行基本的CRUD操作,包括使用数据库进行插入、删除、更新及查询等,并展示了如何在控制器中进行数据赋值和视图渲染,还涉及了简单的事务处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1 <?php
 2 namespace app\index\controller;
 3 
 4 use think\Controller;
 5 use think\Db;
 6 
 7 class Test extends Controller
 8 {
 9 
10     public function index()
11     {
12         $name ="Hello word TP5";
13         
14         $this->assign('name',$name);
15 
16         return $this->fetch();
17     }
18 
19     public function select()
20     {
21         //增
22         //$res = DB::name('lee_user')->insert(['uname'=>'lpc']);
23         $res = DB::execute("insert into lee_user(uname) values(:uname) ",['uname'=>'tp5']);
24         
25         //删
26         //$res = DB::name('lee_user')->delete(3);//括号里默认是ID
27         //$res = DB::name('lee_user')->delete(['uname'=>5]);//这个就执行成功啦,删除ID是5的
28         //$res = DB::name('lee_user')->delete('uname'=>2);//这就没执行成功
29         
30         //改
31         // $res = DB::query(" update lee_user set uname='23' where uid = 4");
32          
35         //查询
36         // $data = DB::name('lee_user')->find();//这查单条的
      // $data = DB::name('lee_user')->select();//这查的是数组
37  // $this->assign('data',$data); 38  //return $this->fetch('add');
      //链式查法
39 $data = DB::name('lee_user')
            ->where('uname','tp5')
            ->field('uid,uname')
            ->limit('1')
            ->select();
         $this->assign('data',$data);
         return $this->fetch('index');
    }

    //测试事务
  //试了半天没效果,回头一看数据库这个表类型是MyISAM,不支持事务!
  //所以首先确定表支不支持事务
  //该表类型命令: ALTER TABLE  表明 ENGINE=INNODB;

    public function traction()
    {
       //TP5框架事务
        // Db::transaction(function(){
        //     DB::name('lee_user')->delete(6);
        //     DB::name('lee_user')->insert(['uname'=>'tranction']);
        // });

        //手动控制事务提交
        //启动事务
        Db::startTrans();
        try{
            Db::table('lee_user')->find(7);
            Db::table('lee_user')->delete(8);
            // 提交事务   
            Db::commit();
        } catch (\Exception $e) {
            // 回滚事务
            Db::rollback();
        }

    }
40 }

 

转载于:https://www.cnblogs.com/lipcblog/p/6846523.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值