用thinkphp进行增删改查的操作

释放双眼,带上耳机,听听看~!

在route.php下注册api:

Route::resource('api/:ver/books', 'api/:ver.books');
Route::post('api/:ver/books', 'api/:ver.books/save');
Route::delete('api/:ver/books', 'api/:ver.books/delete');
Route::put('api/:ver/books', 'api/:ver.books/update');

book表的结构:

用thinkphp进行增删改查的操作

在app/common/model下建立book的model:

class Books extends Base {


    public function getBooks($data = []) {

        $result = $this->select();
        return $result;
    }

}

然后在建一个Books.php

用thinkphp进行增删改查的操作

class Books extends Controller
{

    public function index()
    {
        // 小伙伴仿照我们之前讲解的validate验证机制 去做相关校验
        $data = input('get.');
        $result = model('Books')->getBooks();
        return $result;
    }

    public function save()
    {
        $postData  =  input('param.');

        if(empty($postData["bookid"])) {
            $data = [];
            $data['bookName'] = $postData["bookName"];
            $data['book_description'] = $postData["bookDescription"];
            $data['icon'] = "http://pij4ed5ao.bkt.clouddn.com/33.jpeg";
            try {
                model('Books')->add($data);
            }catch (/Exception $e) {
                return show(config('code.error'), $e->getMessage(), [], 500);
            }
        }else{
            try {
                model('Books')->save([
                    'bookName' => $postData["bookName"]
                ],[
                    'bookid' => $postData["bookid"]
                ]);

            }catch (/Exception $e) {
                return show(config('code.error'), $e->getMessage(), [], 500);
            }
        }


        return null;
    }


    public function delete() {
        $id = input('delete.bookid', 0, 'intval');
        if(empty($id)) {
            return show(config('code.error'), 'id不存在', [], 404);
        }

        $data = [
            'bookid' => $id,
        ];
        // 查询库里面是否存在 点赞
        $userNews = model('Books')->get($data);
        if(empty($userNews)) {
            return show(config('code.error'), '没有这条记录', [], 401);
        }

        try {
                 model('Books')
                ->where($data)
                ->delete();
        }catch (/Exception $e) {
            return show(config('code.error'), '内部错误 点赞失败', [], 500);
        }
    }


    public function update() {
        $putData  =  input('param.');
        try {
            model('Books')->save([
                'bookName' => $putData["bookName"]
            ],[
                'bookid' => $putData["bookid"]
            ]);

        }catch (/Exception $e) {
            return show(config('code.error'), $e->getMessage(), [], 500);
        }
        return null;
    }




}

在postman中就可以测试:

用thinkphp进行增删改查的操作

代码在https://coding.net/u/nickgao/p/phpUserLogin/git

【转自慕课】https://www.imooc.com

ThinkPHP

扫小程序码实现网站登陆,提供源代码

2022-3-3 1:11:05

ThinkPHP

写接口经常用到代码片段

2022-3-3 2:19:20

搜索