首頁 >php框架 >ThinkPHP >介紹一個好用的ThinkPHP Repository包

介紹一個好用的ThinkPHP Repository包

藏色散人
藏色散人轉載
2021-07-14 15:15:002413瀏覽

介紹

think-repository 是為thinkphp 6.0.* 提供的儲存庫用於抽象資料層,使我們的應用程式更靈活地進行維護。

你懂的

ThinkPHP

>= thinkphp 6.0.*

安裝教學

Composer

composer require fanxd/think-repository dev-master

#使用說明

最好在多應用程式下使用

#指令

# #php think fanxd:repository Post

  • 路由
  • Route::resource('post', 'PostController');
  • 可用的方法
  • first($id) // 尋找單一記錄
  • get() // 尋找記錄
  • paginate() // 分頁查詢
  • create($data) // 寫入資料
  • save($data) // 儲存目前資料物件
  • delete( $where) // 刪除記錄

update($where,$data) // 更新記錄find($id) // 尋找單一記錄如果不存在則拋出例外

findWhere($where,$columns = ['*']) // 指定AND查詢條件尋找單一記錄

with([]) // 關聯查詢

#search( []) // 資料搜尋##order($order) // 排序

#尋找記錄

##$posts= $this->repository->get();

#分頁查詢

$posts=$this->repository-> ;paginate($limit);

按結果按id查找

$posts=$this->repository->find( $id);

$posts=$this->repository->first($id);

#載入模型關係

$posts=$this->repository->with(['state'])->find($id);

按結果依欄位名稱找出

$posts=$this->repository->findByField('title', 'Hello');

#按結果由多個欄位找出

$posts=$this->repository->findWhere([

'id' => 1], ['id', 'title]);

按結果在一個欄位中尋找多個值

$posts=$this->repository-> ;findWhereIn('id', [1,2,3,4,5]);

#透過排除一個欄位中的多個值,依結果找出

$posts=$this->repository->findWhereNotIn('id', [6,7,8,9,10]);

#寫入資料

$post = $this->repository->create($data);

##更新記錄

$posts=$this->repository->update($where, $data);

##刪除記錄


$this->repository->delete($id)

#以多個欄位刪除儲存庫中的項目

$this->repository->deleteWhere([ 'id' => 1, 'user_id' => 1])

#Transformer系統會自動產生

transform
檔案,可自行選擇是否啟用,主要功能對我來說就是美化介面讓我們更專業:)###
<?php

namespace app\api\transform;use fanxd\repository\command\transform\Transform;class PostTransform extends Transform{
    public function transform($items)
    {
        return [
            &#39;id&#39;            => $items['id'],
            //... 
            'createTime'    => $items['create_time'],
            'updateTime'    => $items['update_time']
        ];
    }}
#### ##陸續增加更多的方法,如果你有好的想法可以告訴我,秒更!!!######相關推薦:###最新的10個thinkphp影片教學####### ##

以上是介紹一個好用的ThinkPHP Repository包的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除