本速查表里的类都是think为命名空间的,实例化时省去了 use。用的时候注意。php
本速查表里会有四种方法的调用:html
公有方法 $class = new Class(); $class->foo();java
公有静态 Class::foo();mysql
私有方法 $this->foo();git
私有静态 self::foo();github
关于注释,为了简洁,/** 的单行注释被我改成了 // ajax
// 执行应用程序 App::run(Request $request = null); // 设置当前请求的调度信息 App::dispatch($dispatch, $type = 'module'); // 执行函数或者闭包方法 支持参数调用 App::invokeFunction($function, $vars = []); // 调用反射执行类的方法 支持参数绑定 App::invokeMethod($method, $vars = []); // 调用反射执行类的实例化 支持依赖注入 App::invokeClass($class, $vars = []); // 绑定参数 App::bindParams($reflect, $vars = []); // 执行模块 App::module($result, $config, $convert = null); // 初始化应用 App::initCommon(); // 初始化应用或模块 App::init($module = ''); // URL路由检测(根据PATH_INFO) App::routeCheck($request, array $config); // 设置应用的路由检测机制 App::route($route, $must = false);
// 根据传入的build资料建立目录和文件 Build::run(array $build = [], $namespace = 'app', $suffix = false); // 建立目录 Build::buildDir($list); // 建立文件 Build::buildFile($list); // 建立模块 Build::module($module = '', $list = [], $namespace = 'app', $suffix = false); // 建立模块的欢迎页面 Build::buildHello($module, $namespace, $suffix = false); // 建立模块的公共文件 Build::buildCommon($module);
// 链接缓存 Cache::connect(array $options = [], $name = false); // 自动初始化缓存 Cache::init(array $options = []); // 切换缓存类型 须要配置 cache.type 为 complex Cache::store($name = ''); // 判断缓存是否存在 Cache::has($name); // 读取缓存 Cache::get($name, $default = false); // 写入缓存 Cache::set($name, $value, $expire = null); // 自增缓存(针对数值缓存) Cache::inc($name, $step = 1); // 自减缓存(针对数值缓存) Cache::dec($name, $step = 1); // 删除缓存 Cache::rm($name); // 清除缓存 Cache::clear($tag = null); // 读取缓存并删除 Cache::pull($name); // 若是不存在则写入缓存 Cache::remember($name, $value, $expire = null); // 缓存标签 Cache::tag($name, $keys = null, $overlay = false);
// 解析配置文件或内容 Config::parse($config, $type = '', $name = '', $range = ''); // 加载配置文件(PHP格式) Config::load($file, $name = '', $range = ''); // 检测配置是否存在 Config::has($name, $range = ''); // 获取配置参数 为空则获取全部配置 Config::get($name = null, $range = ''); // 设置配置参数 name为数组则为批量设置 Config::set($name, $value = null, $range = ''); // 重置配置参数 Config::reset($range = '');
$controller = new think\Controller(); // 前置操做 $controller->beforeAction($method, $options = []); // 加载模板输出 $controller->fetch($template = '', $vars = [], $replace = [], $config = []); // 渲染内容输出 $controller->display($content = '', $vars = [], $replace = [], $config = []); // 模板变量赋值 $controller->assign($name, $value = ''); // 初始化模板引擎 $controller->engine($engine); // 设置验证失败后是否抛出异常 $controller->validateFailException($fail = true); // 验证数据 $controller->validate($data, $validate, $message = [], $batch = false, $callback = null);
Console::init($run = true); Console::call($command, array $parameters = [], $driver = 'buffer'); $console = new think\Console(); // 执行当前的指令 $console->run(); // 执行指令 $console->doRun(Input $input, Output $output); // 设置输入参数定义 $console->setDefinition(InputDefinition $definition); // 获取输入参数定义 $console->getDefinition(); // Gets the help message. $console->getHelp(); // 是否捕获异常 $console->setCatchExceptions($boolean); // 是否自动退出 $console->setAutoExit($boolean); // 获取名称 $console->getName(); // 设置名称 $console->setName($name); // 获取版本 $console->getVersion(); // 设置版本 $console->setVersion($version); // 获取完整的版本号 $console->getLongVersion(); // 注册一个指令 $console->register($name); // 添加指令 $console->addCommands(array $commands); // 添加一个指令 $console->add(Command $command); // 获取指令 $console->get($name); // 某个指令是设置默认命令否存在 $console->has($name); // 获取全部的命名空间 $console->getNamespaces(); // 查找注册命名空间中的名称或缩写。 $console->findNamespace($namespace); // 查找指令 $console->find($name); // 获取全部的指令 $console->all($namespace = null); // 获取可能的指令名 Console::getAbbreviations($names); // 配置基于用户的参数和选项的输入和输出实例。 $this->configureIO(Input $input, Output $output); // 执行指令 $this->doRunCommand(Command $command, Input $input, Output $output); // 获取指令的基础名称 $this->getCommandName(Input $input); // 获取默认输入定义 $this->getDefaultInputDefinition(); // 设置默认命令 $this->getDefaultCommands(); Console::addDefaultCommands(array $classnames); // 获取可能的建议 $this->getAbbreviationSuggestions($abbrevs); // 返回命名空间部分 $console->extractNamespace($name, $limit = null); // 查找可替代的建议 $this->findAlternatives($name, $collection); // 设置默认的指令 $console->setDefaultCommand($commandName); // 返回全部的命名空间 $this->extractAllNamespaces($name);
$file = new File('test.txt', 'a'); //是否测试 $file->isTest($test = false); // 设置上传信息 $file->setUploadInfo($info); // 获取上传文件的信息 $file->getInfo($name = ''); // 获取上传文件的文件名 $file->getSaveName(); // 设置上传文件的保存文件名 $file->setSaveName($saveName); // 获取文件的哈希散列值 $file->hash($type = 'sha1'); // 检查目录是否可写 $this->checkPath($path); // 获取文件类型信息 $file->getMime(); // 设置文件的命名规则 $file->rule($rule); // 设置上传文件的验证规则 $file->validate($rule = []); // 检测是否合法的上传文件 $file->isValid(); // 检测上传文件 $file->check($rule = []); // 检测上传文件后缀 $file->checkExt($ext); // 检测图像文件 $file->checkImg(); // 判断图像类型 $this->getImageType($image); // 检测上传文件大小 $file->checkSize($size); // 检测上传文件类型 $file->checkMime($mime); /** * 移动文件 * @param string $path 保存路径 * @param string|bool $savename 保存的文件名 默认自动生成 * @param boolean $replace 同名文件是否覆盖 * @return false|SplFileInfo false-失败 不然返回SplFileInfo实例 */ $file->move($path, $savename = true, $replace = true); // 获取保存文件名 $this->buildSaveName($savename); // 获取错误代码信息 $this->error($errorNo); // 获取错误信息 $file->getError();
// Cookie初始化 Cookie::init(); // 设置或者获取cookie做用域(前缀) Cookie::prefix($prefix = ''); // Cookie 设置、获取、删除 Cookie::set($name, $value = '', $option = null); // 永久保存Cookie数据 Cookie::forever($name, $value = '', $option = null); // 判断Cookie数据 Cookie::has($name, $prefix = null); // Cookie获取 Cookie::get($name, $prefix = null); // Cookie删除 Cookie::delete($name, $prefix = null); // Cookie清空 Cookie::clear($prefix = null); Cookie::jsonFormatProtect(&$val, $key, $type = 'encode');
// 数据库初始化 并取得数据库类实例 Db::connect($config = [], $name = false); // 数据库链接参数解析 Db::parseConfig($config); // DSN解析 // 格式: mysql://username:passwd@localhost:3306/DbName?param1=val1¶m2=val2#utf8 Db::parseDsn($dsnStr); // 调用驱动类的方法 Db::__callStatic($method, $params);
// 记录时间(微秒)和内存使用状况 Debug::remark($name, $value = ''); // 统计某个区间的时间(微秒)使用状况 Debug::getRangeTime($start, $end, $dec = 6); // 统计从开始到统计时的时间(微秒)使用状况 Debug::getUseTime($dec = 6); // 获取当前访问的吞吐率状况 Debug::getThroughputRate(); // 记录区间的内存使用状况 Debug::getRangeMem($start, $end, $dec = 2); // 统计从开始到统计时的内存使用状况 Debug::getUseMem($dec = 2); // 统计区间的内存峰值状况 Debug::getMemPeak($start, $end, $dec = 2); // 获取文件加载信息 Debug::getFile($detail = false); // 浏览器友好的变量输出 Debug::dump($var, $echo = true, $label = null, $flags = ENT_SUBSTITUTE); Debug::inject(Response $response, &$content);
/** * 设置异常额外的Debug数据 * 数据将会显示为下面的格式 * * Exception Data * -------------------------------------------------- * Label 1 * key1 value1 * key2 value2 * Label 2 * key1 value1 * key2 value2 * * @param string $label 数据分类,用于异常页面显示 * @param array $data 须要显示的数据,必须为关联数组 */ $this->setData($label, array $data); /** * 获取异常额外Debug数据 * 主要用于输出到异常页面便于调试 * @return array 由setData设置的Debug数据 */ $this->getData();
// 获取环境变量值 Env::get($name, $default = null);
/** * 动态添加行为扩展到某个标签 * @param string $tag 标签名称 * @param mixed $behavior 行为名称 * @param bool $first 是否放到开头执行 * @return void */ Hook::add($tag, $behavior, $first = false); /** * 批量导入插件 * @param array $tags 插件信息 * @param boolean $recursive 是否递归合并 */ Hook::import(array $tags, $recursive = true); /** * 获取插件信息 * @param string $tag 插件位置 留空获取所有 * @return array */ Hook::get($tag = ''); /** * 监听标签的行为 * @param string $tag 标签名称 * @param mixed $params 传入参数 * @param mixed $extra 额外参数 * @param bool $once 只获取一个有效返回值 * @return mixed */ Hook::listen($tag, &$params = null, $extra = null, $once = false); /** * 执行某个行为 * @param mixed $class 要执行的行为 * @param string $tag 方法名(标签名) * @param Mixed $params 传人的参数 * @param mixed $extra 额外参数 * @return mixed */ Hook::exec($class, $tag = '', &$params = null, $extra = null);
// 快速导入Traits PHP5.5以上无需调用 load_trait($class, $ext = EXT); // 抛出异常处理 exception($msg, $code = 0, $exception = ''); /** * 记录时间(微秒)和内存使用状况 * @param string $start 开始标签 * @param string $end 结束标签 * @param integer|string $dec 小数位 若是是m 表示统计内存占用 * @return mixed */ debug($start, $end = '', $dec = 6); /** * 获取语言变量值 * @param string $name 语言变量名 * @param array $vars 动态变量值 * @param string $lang 语言 * @return mixed */ lang($name, $vars = [], $lang = ''); /** * 获取和设置配置参数 * @param string|array $name 参数名 * @param mixed $value 参数值 * @param string $range 做用域 * @return mixed */ config($name = '', $value = null, $range = ''); /** * 获取输入数据 支持默认值和过滤 * @param string $key 获取的变量名 * @param mixed $default 默认值 * @param string $filter 过滤方法 * @return mixed */ input($key = '', $default = null, $filter = ''); /** * 渲染输出Widget * @param string $name Widget名称 * @param array $data 传入的参数 * @return mixed * widget($name, $data = []); /** * 实例化Model * @param string $name Model名称 * @param string $layer 业务层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return \think\Model */ model($name = '', $layer = 'model', $appendSuffix = false); /** * 实例化验证器 * @param string $name 验证器名称 * @param string $layer 业务层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return \think\Validate */ validate($name = '', $layer = 'validate', $appendSuffix = false); /** * 实例化数据库类 * @param string $name 操做的数据表名称(不含前缀) * @param array|string $config 数据库配置参数 * @param bool $force 是否强制从新链接 * @return \think\db\Query */ db($name = '', $config = [], $force = true); /** * 实例化控制器 格式:[模块/]控制器 * @param string $name 资源地址 * @param string $layer 控制层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return \think\Controller */ controller($name, $layer = 'controller', $appendSuffix = false); /** * 调用模块的操做方法 参数格式 [模块/控制器/]操做 * @param string $url 调用地址 * @param string|array $vars 调用参数 支持字符串和数组 * @param string $layer 要调用的控制层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return mixed */ action($url, $vars = [], $layer = 'controller', $appendSuffix = false); /** * 导入所需的类库 同java的Import 本函数有缓存功能 * @param string $class 类库命名空间字符串 * @param string $baseUrl 起始路径 * @param string $ext 导入的文件扩展名 * @return boolean */ import($class, $baseUrl = '', $ext = EXT); /** * 快速导入第三方框架类库 全部第三方框架的类库文件统一放到 系统的Vendor目录下面 * @param string $class 类库 * @param string $ext 类库后缀 * @return boolean */ vendor($class, $ext = EXT); /** * 浏览器友好的变量输出 * @param mixed $var 变量 * @param boolean $echo 是否输出 默认为true 若是为false 则返回输出字符串 * @param string $label 标签 默认为空 * @return void|string */ dump($var, $echo = true, $label = null); /** * Url生成 * @param string $url 路由地址 * @param string|array $vars 变量 * @param bool|string $suffix 生成的URL后缀 * @param bool|string $domain 域名 * @return string */ url($url = '', $vars = '', $suffix = true, $domain = false); /** * Session管理 * @param string|array $name session名称,若是为数组表示进行session设置 * @param mixed $value session值 * @param string $prefix 前缀 * @return mixed */ session($name, $value = '', $prefix = null); /** * Cookie管理 * @param string|array $name cookie名称,若是为数组表示进行cookie设置 * @param mixed $value cookie值 * @param mixed $option 参数 * @return mixed */ cookie($name, $value = '', $option = null); /** * 缓存管理 * @param mixed $name 缓存名称,若是为数组表示进行缓存设置 * @param mixed $value 缓存值 * @param mixed $options 缓存参数 * @param string $tag 缓存标签 * @return mixed */ cache($name, $value = '', $options = null, $tag = null); /** * 记录日志信息 * @param mixed $log log信息 支持字符串和数组 * @param string $level 日志级别 * @return void|array */ trace($log = '[think]', $level = 'log'); // 获取当前Request对象实例 request(); /** * 建立普通 Response 对象实例 * @param mixed $data 输出数据 * @param int|string $code 状态码 * @param array $header 头信息 * @param string $type * @return Response */ response($data = [], $code = 200, $header = [], $type = 'html'); /** * 渲染模板输出 * @param string $template 模板文件 * @param array $vars 模板变量 * @param array $replace 模板替换 * @param integer $code 状态码 * @return \think\response\View */ view($template = '', $vars = [], $replace = [], $code = 200); /** * 获取\think\response\Json对象实例 * @param mixed $data 返回的数据 * @param integer $code 状态码 * @param array $header 头部 * @param array $options 参数 * @return \think\response\Json */ json($data = [], $code = 200, $header = [], $options = []); /** * 获取\think\response\Jsonp对象实例 * @param mixed $data 返回的数据 * @param integer $code 状态码 * @param array $header 头部 * @param array $options 参数 * @return \think\response\Jsonp */ jsonp($data = [], $code = 200, $header = [], $options = []); /** * 获取\think\response\Xml对象实例 * @param mixed $data 返回的数据 * @param integer $code 状态码 * @param array $header 头部 * @param array $options 参数 * @return \think\response\Xml */ xml($data = [], $code = 200, $header = [], $options = []); /** * 获取\think\response\Redirect对象实例 * @param mixed $url 重定向地址 支持Url::build方法的地址 * @param array|integer $params 额外参数 * @param integer $code 状态码 * @param array $with 隐式传参 * @return \think\response\Redirect */ redirect($url = [], $params = [], $code = 302, $with = []); /** * 抛出HTTP异常 * @param integer|Response $code 状态码 或者 Response对象实例 * @param string $message 错误信息 * @param array $header 参数 */ abort($code, $message = null, $header = []); // 调试变量而且中断输出 halt($var); /** * 生成表单令牌 * @param string $name 令牌名称 * @param mixed $type 令牌生成方法 * @return string */ token($name = '__token__', $type = 'md5'); /** * 延迟预载入关联查询 * @param mixed $resultSet 数据集 * @param mixed $relation 关联 * @return array */ load_relation($resultSet, $relation); // 数组转换为数据集对象 collection($resultSet);
/** * 设置语言定义(不区分大小写) * @param string|array $name 语言变量 * @param string $value 语言值 * @param string $range 语言做用域 * @return mixed */ Lang::set($name, $value = null, $range = ''); /** * 加载语言定义(不区分大小写) * @param string $file 语言文件 * @param string $range 语言做用域 * @return mixed * Lang::load($file, $range = ''); /** * 获取语言定义(不区分大小写) * @param string|null $name 语言变量 * @param array $vars 变量替换 * @param string $range 语言做用域 * @return mixed */ Lang::has($name, $range = ''); /** * 获取语言定义(不区分大小写) * @param string|null $name 语言变量 * @param array $vars 变量替换 * @param string $range 语言做用域 * @return mixed */ Lang::get($name = null, $vars = [], $range = ''); // 自动侦测设置获取语言选择 Lang::detect(); // 设置语言自动侦测的变量 Lang::setLangDetectVar($var); // 设置语言的cookie保存变量 Lang::setLangCookieVar($var); // 设置语言的cookie的过时时间 Lang::setLangCookieExpire($expire); // 设置容许的语言列表 Lang::setAllowLangList($list);
// 自动加载 Loader::autoload($class); // 查找文件 Loader::findFile($class); // 注册classmap Loader::addClassMap($class, $map = ''); // 注册命名空间 Loader::addNamespace($namespace, $path = ''); // 添加Ps0空间 Loader::addPsr0($prefix, $paths, $prepend = false); // 添加Psr4空间 Loader::addPsr4($prefix, $paths, $prepend = false); // 注册命名空间别名 Loader::addNamespaceAlias($namespace, $original = ''); // 注册自动加载机制 Loader::register($autoload = ''); // 注册composer自动加载 Loader::registerComposerLoader(); /** * 导入所需的类库 同java的Import 本函数有缓存功能 * @param string $class 类库命名空间字符串 * @param string $baseUrl 起始路径 * @param string $ext 导入的文件扩展名 * @return boolean */ Loader::import($class, $baseUrl = '', $ext = EXT); /** * 实例化(分层)模型 * @param string $name Model名称 * @param string $layer 业务层名称 * @param bool $appendSuffix 是否添加类名后缀 * @param string $common 公共模块名 * @return Object * @throws ClassNotFoundException */ Loader::model($name = '', $layer = 'model', $appendSuffix = false, $common = 'common'); /** * 实例化(分层)控制器 格式:[模块名/]控制器名 * @param string $name 资源地址 * @param string $layer 控制层名称 * @param bool $appendSuffix 是否添加类名后缀 * @param string $empty 空控制器名称 * @return Object|false * @throws ClassNotFoundException */ Loader::controller($name, $layer = 'controller', $appendSuffix = false, $empty = ''); /** * 实例化验证类 格式:[模块名/]验证器名 * @param string $name 资源地址 * @param string $layer 验证层名称 * @param bool $appendSuffix 是否添加类名后缀 * @param string $common 公共模块名 * @return Object|false * @throws ClassNotFoundException */ Loader::validate($name = '', $layer = 'validate', $appendSuffix = false, $common = 'common'); /** * 数据库初始化 并取得数据库类实例 * @param mixed $config 数据库配置 * @param bool|string $name 链接标识 true 强制从新链接 * @return \think\db\Connection */ Loader::db($config = [], $name = false); /** * 远程调用模块的操做方法 参数格式 [模块/控制器/]操做 * @param string $url 调用地址 * @param string|array $vars 调用参数 支持字符串和数组 * @param string $layer 要调用的控制层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return mixed */ Loader::action($url, $vars = [], $layer = 'controller', $appendSuffix = false); /** * 字符串命名风格转换 * type 0 将Java风格转换为C的风格 1 将C风格转换为Java的风格 * @param string $name 字符串 * @param integer $type 转换类型 * @param bool $ucfirst 首字母是否大写(驼峰规则) * @return string */ Loader::parseName($name, $type = 0, $ucfirst = true); /** * 解析应用类的类名 * @param string $module 模块名 * @param string $layer 层名 controller model ... * @param string $name 类名 * @param bool $appendSuffix * @return string */ Loader::parseClass($module, $layer, $name, $appendSuffix = false); /** * 初始化类的实例 * @return void */ Loader::clearInstance(); /** * 做用范围隔离 * * @param $file * @return mixed */ __include_file(); __require_file($file);
// 日志初始化 Log::init($config = []); // 获取日志信息 Log::getLog($type = ''); /** * 记录调试信息 * @param mixed $msg 调试信息 * @param string $type 信息类型 * @return void */ Log::record($msg, $type = 'log'); // 清空日志信息 Log::clear(); // 当前日志记录的受权key Log::key($key); /** * 检查日志写入权限 * @param array $config 当前日志配置参数 * @return bool */ Log::check($config); // 保存调试信息 Log::save(); /** * 实时写入日志信息 并支持行为 * @param mixed $msg 调试信息 * @param string $type 信息类型 * @param bool $force 是否强制写入 * @return bool */ Log::write($msg, $type = 'log', $force = false); // 静态调用 Log::__callStatic($method, $args);
$model = new Model(); /** * 获取当前模型的数据库查询对象 * @access public * @param bool $baseQuery 是否调用全局查询范围 * @return Query */ $model->db($baseQuery = true); $this->initialize(); /** * 设置数据对象值 * @access public * @param mixed $data 数据或者属性名 * @param mixed $value 值 * @return $this */ $model->data($data, $value = null); /** * 获取对象原始数据 若是不存在指定字段返回false * @access public * @param string $name 字段名 留空获取所有 * @return mixed * @throws InvalidArgumentException */ $model->getData($name = null); /** * 修改器 设置数据对象值 * @access public * @param string $name 属性名 * @param mixed $value 属性值 * @param array $data 数据 * @return $this */ $model->setAttr($name, $value, $data = []); /** * 自动写入时间戳 * @access public * @param string $name 时间戳字段 * @return mixed */ $this->autoWriteTimestamp($name); /** * 时间日期字段格式化处理 * @access public * @param mixed $time 时间日期表达式 * @param mixed $format 日期格式 * @param bool $timestamp 是否进行时间戳转换 * @return mixed */ $this->formatDateTime($time, $format, $timestamp = false); /** * 数据写入 类型转换 * @access public * @param mixed $value 值 * @param string|array $type 要转换的类型 * @return mixed */ $this->writeTransform($value, $type); // 获取器 获取数据对象的值 $model->getAttr($name); /** * 数据读取 类型转换 * @access public * @param mixed $value 值 * @param string|array $type 要转换的类型 * @return mixed */ $this->readTransform($value, $type); /** * 设置须要追加的输出属性 * @access public * @param array $append 属性列表 * @param bool $override 是否覆盖 * @return $this */ $model->append($append = [], $override = false); /** * 设置附加关联对象的属性 * @access public * @param string $relation 关联方法 * @param string|array $append 追加属性名 * @return $this * @throws Exception */ $model->appendRelationAttr($relation, $append); /** * 设置须要隐藏的输出属性 * @access public * @param array $hidden 属性列表 * @param bool $override 是否覆盖 * @return $this */ $model->hidden($hidden = [], $override = false); /** * 设置须要输出的属性 * @access public * @param array $visible * @param bool $override 是否覆盖 * @return $this */ $model->visible($visible = [], $override = false); /** * 解析隐藏及显示属性 * @access protected * @param array $attrs 属性 * @param array $result 结果集 * @param bool $visible * @return array */ $this->parseAttr($attrs, &$result, $visible = true); /** * 转换子模型对象 * @access protected * @param Model|ModelCollection $model * @param $visible * @param $hidden * @param $key * @return array */ $this->subToArray($model, $visible, $hidden, $key); // 转换当前模型对象为数组 $model->toArray(); /** * 转换当前模型对象为JSON字符串 * @access public * @param integer $options json参数 * @return string */ $model->toJson($options = JSON_UNESCAPED_UNICODE); /** * 转换当前模型数据集为数据集对象 * @access public * @param array|\think\Collection $collection 数据集 * @return \think\Collection */ $model->toCollection($collection); /** * 关联数据一块儿更新 * @access public * @param mixed $relation 关联 * @return $this */ $model->together($relation); /** * 获取模型对象的主键 * @access public * @param string $name 模型名 * @return mixed */ $model->getPk($name = ''); // 判断一个字段名是否为主键字段 $this->isPk($key); /** * 保存当前数据对象 * @access public * @param array $data 数据 * @param array $where 更新条件 * @param string $sequence 自增序列名 * @return integer|false */ $model->save($data = [], $where = [], $sequence = null); /** * 保存多个数据到当前数据对象 * @access public * @param array $dataSet 数据 * @param boolean $replace 是否自动识别更新和写入 * @return array|false * @throws \Exception */ $model->saveAll($dataSet, $replace = true); /** * 设置容许写入的字段 * @access public * @param mixed $field 容许写入的字段 若是为true只容许写入数据表字段 * @return $this */ $model->allowField($field); /** * 设置只读字段 * @access public * @param mixed $field 只读字段 * @return $this */ $model->readonly($field); /** * 是否为更新数据 * @access public * @param bool $update * @param mixed $where * @return $this */ $model->isUpdate($update = true, $where = null); /** * 数据自动完成 * @access public * @param array $auto 要自动更新的字段列表 * @return void */ $this->autoCompleteData($auto = []); // 删除当前的记录 $model->delete(); /** * 设置自动完成的字段( 规则经过修改器定义) * @access public * @param array $fields 须要自动完成的字段 * @return $this */ $model->auto($fields); /** * 设置字段验证 * @access public * @param array|string|bool $rule 验证规则 true表示自动读取验证器类 * @param array $msg 提示信息 * @param bool $batch 批量验证 * @return $this */ $model->validate($rule = true, $msg = [], $batch = false); /** * 设置验证失败后是否抛出异常 * @access public * @param bool $fail 是否抛出异常 * @return $this */ $model->validateFailException($fail = true); /** * 自动验证数据 * @access protected * @param array $data 验证数据 * @param mixed $rule 验证规则 * @param bool $batch 批量验证 * @return bool */ $this->validateData($data, $rule = null, $batch = null); // 返回模型的错误信息 $this->getError(); /** * 注册回调方法 * @access public * @param string $event 事件名 * @param callable $callback 回调方法 * @param bool $override 是否覆盖 * @return void */ Model::event($event, $callback, $override = false); /** * 触发事件 * @access protected * @param string $event 事件名 * @param mixed $params 传入参数(引用) * @return bool */ $this->trigger($event, &$params); /** * 写入数据 * @access public * @param array $data 数据数组 * @param array|true $field 容许字段 * @return $this */ Model::create($data = [], $field = null); /** * 更新数据 * @access public * @param array $data 数据数组 * @param array $where 更新条件 * @param array|true $field 容许字段 * @return $this */ Model::update($data = [], $where = [], $field = null); /** * 查找单条记录 * @access public * @param mixed $data 主键值或者查询条件(闭包) * @param array|string $with 关联预查询 * @param bool $cache 是否缓存 * @return static * @throws exception\DbException */ Model::get($data = null, $with = [], $cache = false); /** * 查找全部记录 * @access public * @param mixed $data 主键列表或者查询条件(闭包) * @param array|string $with 关联预查询 * @param bool $cache 是否缓存 * @return static[]|false * @throws exception\DbException */ Model::all($data = null, $with = [], $cache = false); /** * 分析查询表达式 * @access public * @param mixed $data 主键列表或者查询条件(闭包) * @param string $with 关联预查询 * @param bool $cache 是否缓存 * @return Query */ Model::parseQuery(&$data, $with, $cache); /** * 删除记录 * @access public * @param mixed $data 主键列表 支持闭包查询条件 * @return integer 成功删除的记录数 */ Model::destroy($data); /** * 命名范围 * @access public * @param string|array|\Closure $name 命名范围名称 逗号分隔 * @internal mixed ...$params 参数调用 * @return Model|Query */ Model::scope($name); // 设置是否使用全局查询范围 Model::useGlobalScope($use); /** * 根据关联条件查询当前模型 * @access public * @param string $relation 关联方法名 * @param mixed $operator 比较操做符 * @param integer $count 个数 * @param string $id 关联表的统计字段 * @return Relation|Query */ Model::has($relation, $operator = '>=', $count = 1, $id = '*'); /** * 根据关联条件查询当前模型 * @access public * @param string $relation 关联方法名 * @param mixed $where 查询条件(数组或者闭包) * @return Relation|Query */ Model::hasWhere($relation, $where = []);