[TOC]
### get
~~~
/**
* 根据主键获取对象
* @param $id
* @param bool $cache 是否使用缓存
* @param null $cache_time 缓存时间
* @return mixed|Record|string
*/
public static function get($id,$cache= true,$cache_time=null)
~~~
使用缓存时 获取相同 id 的对象会使用缓存
实例:
~~~
$user=User::get(1);
$user->name='tengzhinei';
$user->save();
~~~
### getLock
获取数据同时加锁,注意需要在事物中使用
~~~
DB::runInTrans(function(){
$user=User::getLock(1);
$user->name='tengzhinei';
$user->save();
});
~~~
### find
~~~
public static function find(array $where)
~~~
查询一条符合条件的记录,没有返回null
实例:
~~~
$user=User::find(['domain'=>'rapphp','account'=>'tengzhinei']);
~~~
如果模型中配置了缓存key且查询条件匹配的换查询结果会进缓存
~~~
class User extend Record{
public function cacheKeys(){
return ['domain,account'];
}
}
~~~
### findCreate
~~~
public static function findCreate(array $where)
~~~
查询一条符合条件的记录,如果没有返回一条条件相同的对象
实例:
~~~
$user=User::findCreate(['domain'=>'rapphp','account'=>'tengzhinei']);
如果数据库不存在当前对象返回的对象不为空
返回对象 User{
'domain':'rapphp',
'account':'tengzhinei'
}
~~~
缓存条件和 find 相同
### select
* * * * *
~~~
/**
* 检索
* @param string $fields 字段
* @param bool $contain 包含还是不包含
* @return Select
*/
public static function select($fields='', $contain=true)
~~~
实例
~~~
//返回全部字段
$users=User::select()->limit(1,10)->findAll();
//返回部分字段
$users=User::select('name,account'')->limit(1,10)->findAll();
//不包含字段
$users=User::select('phone',false')->limit(1,10)->findAll();
~~~
- 序言
- 开始
- 安装 RapPhp
- 应用目录
- 配置文件
- 入口类
- MVC架构
- 控制器基础
- 前置方法
- 拦截器
- 动态路由
- Request和Response
- Cookie和Session
- 模板引擎
- 请求缓存
- 流程图
- 数据库
- 基础使用
- 查询语法
- 查询操作
- where
- order
- limit
- lock
- fields
- join
- distinct
- having
- group
- force
- 查询方法
- 多数据源
- 数据库类型
- Record模型
- 使用Record
- 增删改
- 查找方法
- 数据类型
- 基本类型
- JSON 数据类型
- time
- date
- attach
- const
- 迭代操作
- record 更多方法
- 注入与转json
- 多级缓存
- 多数据源
- 模型生成
- 回调事件
- IOC控制反转
- Ioc基础概念
- 依赖注入
- Scope作用域
- 构造器
- 循环依赖
- AOP面向切面
- AOP使用
- 切面
- AopBuild
- 生成 aop 文件
- 事件勾子
- 执行循序
- Swoole
- Http服务器
- 用户进程
- Context上下文(重要)
- 协程
- 特色功能
- 限流器
- 连接池
- 数据库连接池
- Redis 连接池
- 通用连接池
- Rpc 远程调用
- Rpc服务提供方
- Rpc客户端
- 熔断器与服务降级
- Redis 分布式锁
- 其他功能
- 缓存
- redis
- 文件存储
- 存储简介
- 本地存储
- OSS存储
- 配置
- 日志
- 验证器
- FileUtil
- 数组Util
- Http工具
- 多语言
- 命令行
- 使用命令行
- 生成模型文件
- AOP动态文件生成
- swoole_http服务器
- 自定义命令行
- 异常与调试
- 异常抛出
- 异常处理
- 部署
- URL重写
- DOCKER 镜像(重要)
- 附录
- 回调事件
- 开发规范
- Swoole开发注意点
- 热点行更新排队机制
