# 模型缓存 **Repository Path**: we7coreteam/w7-laravel-cache-model ## Basic Information - **Project Name**: 模型缓存 - **Description**: Laravel/Model find、findMany 支持缓存 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2019-01-31 - **Last Updated**: 2024-02-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # w7Laravel #### 使用说明 ### 1. 注册 `Psr\SimpleCache\CacheInterface` 实现 ``` \W7\Laravel\CacheModel\Caches\Cache::setCacheResolver(Cache::store()); ``` ### 2. 继承 `W7\Laravel\CacheModel\Model` ``` use W7\Laravel\CacheModel\Model; class Member extends Model { public $timestamps = false; protected $table = 'members'; protected $primaryKey = 'uid'; // 此行可缺省 protected $useCache = true; } ``` ### 3. 使用 #### find($id) ``` $uid = 1; $user = Member::query()->find($uid); $user = Member::query()->find($uid); // query once // select * from `ims_members` where `ims_members`.`uid` = ? limit 1 ``` #### find($ids) 仅限指定 id 查询,不限定返回列。 ``` $uids = [1, 2, 5]; Member::query()->find($uids); Member::query()->find($uids); // query once // select * from `ims_members` where `ims_members`.`uid` in (?, ?, ?) ``` #### $model->save(); 删除缓存。 ``` $member = Member::find($uid) $member->invite_code = rand(1, 100000); $member->save(); ``` #### $model->update(); 删除缓存 #### $model->delete(); 删除缓存 #### Member::flush(); 清空指定表的缓存 #### Cache::flush();