Constants

MODEL_INSERT

MODEL_INSERT = 1

MODEL_UPDATE

MODEL_UPDATE = 2

MODEL_BOTH

MODEL_BOTH = 3

MUST_VALIDATE

MUST_VALIDATE = 1

EXISTS_VALIDATE

EXISTS_VALIDATE = 0

VALUE_VALIDATE

VALUE_VALIDATE = 2

TYPE_OBJECT

TYPE_OBJECT = 1

TYPE_INT

TYPE_INT = 2

TYPE_STRING

TYPE_STRING = 3

Properties

$db

$db : 

Type

$pk

$pk : 

Type

$autoinc

$autoinc : 

Type

$tablePrefix

$tablePrefix : 

Type

$name

$name : 

Type

$dbName

$dbName : 

Type

$connection

$connection : 

Type

$tableName

$tableName : 

Type

$trueTableName

$trueTableName : 

Type

$error

$error : 

Type

$fields

$fields : 

Type

$data

$data : 

Type

$options

$options : 

Type

$_validate

$_validate : 

Type

$_auto

$_auto : 

Type

$_map

$_map : 

Type

$_scope

$_scope : 

Type

$autoCheckFields

$autoCheckFields : 

Type

$patchValidate

$patchValidate : 

Type

$methods

$methods : 

Type

$_idType

$_idType : 

Type

$_autoinc

$_autoinc : 

Type

$_db

$_db : 

Type

Methods

__construct()

__construct(string  $name = '', string  $tablePrefix = '', mixed  $connection = '') 

架构函数 取得DB类的实例对象 字段检查

Parameters

string $name

模型名称

string $tablePrefix

表前缀

mixed $connection

数据库连接信息

flush()

flush() : void

获取字段信息并缓存 主键和自增信息直接配置

__set()

__set(string  $name, mixed  $value) : void

设置数据对象的值

Parameters

string $name

名称

mixed $value

__get()

__get(string  $name) : mixed

获取数据对象的值

Parameters

string $name

名称

Returns

mixed

__isset()

__isset(string  $name) : boolean

检测数据对象的值

Parameters

string $name

名称

Returns

boolean

__unset()

__unset(string  $name) : void

销毁数据对象的值

Parameters

string $name

名称

__call()

__call(string  $method, array  $args) : mixed

利用__call方法实现一些特殊的Model方法

Parameters

string $method

方法名称

array $args

调用参数

Returns

mixed

add()

add(mixed  $data = '', array  $options = array(), boolean  $replace = false) : mixed

新增数据

Parameters

mixed $data

数据

array $options

表达式

boolean $replace

是否replace

Returns

mixed

addAll()

addAll(  $dataList,   $options = array(),   $replace = false) 

Parameters

$dataList
$options
$replace

selectAdd()

selectAdd(string  $fields = '', string  $table = '', array  $options = array()) : boolean

通过Select方式添加记录

Parameters

string $fields

要插入的数据表字段名

string $table

要插入的数据表名

array $options

表达式

Returns

boolean

save()

save(mixed  $data = '', array  $options = array()) : boolean

保存数据

Parameters

mixed $data

数据

array $options

表达式

Returns

boolean

delete()

delete(mixed  $options = array()) : mixed

删除数据

Parameters

mixed $options

表达式

Returns

mixed

select()

select(array  $options = array()) : mixed

查询数据集

Parameters

array $options

表达式参数

Returns

mixed

buildSql()

buildSql() : string

生成查询SQL 可用于子查询

Returns

string

find()

find(mixed  $options = array()) : mixed

查询数据

Parameters

mixed $options

表达式参数

Returns

mixed

parseFieldsMap()

parseFieldsMap(array  $data, integer  $type = 1) : array

处理字段映射

Parameters

array $data

当前数据

integer $type

类型 0 写入 1 读取

Returns

array

setField()

setField(string|array  $field, string  $value = '') : boolean

设置记录的某个字段值 支持使用数据库字段和方法

Parameters

string|array $field

字段名

string $value

字段值

Returns

boolean

setInc()

setInc(string  $field, integer  $step = 1) : boolean

字段值增长

Parameters

string $field

字段名

integer $step

增长值

Returns

boolean

setDec()

setDec(string  $field, integer  $step = 1) : boolean

字段值减少

Parameters

string $field

字段名

integer $step

减少值

Returns

boolean

getField()

getField(string  $field,   $sepa = null) : mixed

获取一条记录的某个字段值

Parameters

string $field

字段名

$sepa

Returns

mixed

create()

create(mixed  $data = '', string  $type = '') : mixed

创建数据对象 但不保存到数据库

Parameters

mixed $data

创建数据

string $type

状态

Returns

mixed

autoCheckToken()

autoCheckToken(  $data) 

Parameters

$data

regex()

regex(string  $value, string  $rule) : boolean

使用正则验证数据

Parameters

string $value

要验证的数据

string $rule

验证规则

Returns

boolean

check()

check(string  $value, mixed  $rule, string  $type = 'regex') : boolean

验证数据 支持 in between equal length regex expire ip_allow ip_deny

Parameters

string $value

验证数据

mixed $rule

验证表达式

string $type

验证方式 默认为正则验证

Returns

boolean

query()

query(string  $sql, mixed  $parse = false) : mixed

SQL查询

Parameters

string $sql

SQL指令

mixed $parse

是否需要解析SQL

Returns

mixed

execute()

execute(string  $sql, mixed  $parse = false) : false

执行SQL语句

Parameters

string $sql

SQL指令

mixed $parse

是否需要解析SQL

Returns

false —

| integer

db()

db(integer  $linkNum = '', mixed  $config = '', boolean  $force = false) : \Think\Model

切换当前的数据库连接

Parameters

integer $linkNum

连接序号

mixed $config

数据库连接信息

boolean $force

强制重新连接

Returns

\Think\Model

getModelName()

getModelName() : string

得到当前的数据对象名称

Returns

string

getTableName()

getTableName() : string

得到完整的数据表名 Mongo表名不带dbName

Returns

string

startTrans()

startTrans() : void

启动事务

commit()

commit() : boolean

提交事务

Returns

boolean

rollback()

rollback() : boolean

事务回滚

Returns

boolean

getError()

getError() : string

返回模型的错误信息

Returns

string

getDbError()

getDbError() : string

返回数据库的错误信息

Returns

string

getLastInsID()

getLastInsID() : string

返回最后插入的ID

Returns

string

getLastSql()

getLastSql() : string

返回最后执行的sql语句

Returns

string

_sql()

_sql() 

getPk()

getPk() : string

获取主键名称

Returns

string

getDbFields()

getDbFields() : array

获取数据表字段信息

Returns

array

data()

data(mixed  $data = '') : \Think\Model

设置数据对象值

Parameters

mixed $data

数据

Returns

\Think\Model

table()

table(mixed  $table) : \Think\Model

指定当前的数据表

Parameters

mixed $table

Returns

\Think\Model

using()

using(mixed  $using) : \Think\Model

USING支持 用于多表删除

Parameters

mixed $using

Returns

\Think\Model

join()

join(mixed  $join, string  $type = 'INNER') : \Think\Model

查询SQL组装 join

Parameters

mixed $join
string $type

JOIN类型

Returns

\Think\Model

union()

union(mixed  $union, boolean  $all = false) : \Think\Model

查询SQL组装 union

Parameters

mixed $union
boolean $all

Returns

\Think\Model

cache()

cache(mixed  $key = true, integer  $expire = null, string  $type = '') : \Think\Model

查询缓存

Parameters

mixed $key
integer $expire
string $type

Returns

\Think\Model

field()

field(mixed  $field, boolean  $except = false) : \Think\Model

指定查询字段 支持字段排除

Parameters

mixed $field
boolean $except

是否排除

Returns

\Think\Model

scope()

scope(mixed  $scope = '', array  $args = NULL) : \Think\Model

调用命名范围

Parameters

mixed $scope

命名范围名称 支持多个 和直接定义

array $args

参数

Returns

\Think\Model

where()

where(mixed  $where, mixed  $parse = null) : \Think\Model

指定查询条件 支持安全过滤

Parameters

mixed $where

条件表达式

mixed $parse

预处理参数

Returns

\Think\Model

limit()

limit(mixed  $offset, mixed  $length = null) : \Think\Model

指定查询数量

Parameters

mixed $offset

起始位置

mixed $length

查询数量

Returns

\Think\Model

page()

page(mixed  $page, mixed  $listRows = null) : \Think\Model

指定分页

Parameters

mixed $page

页数

mixed $listRows

每页数量

Returns

\Think\Model

comment()

comment(string  $comment) : \Think\Model

查询注释

Parameters

string $comment

注释

Returns

\Think\Model

fetchSql()

fetchSql(boolean  $fetch) : \Think\Model

获取执行的SQL语句

Parameters

boolean $fetch

是否返回sql

Returns

\Think\Model

bind()

bind(string  $key, mixed  $value = false) : \Think\Model

参数绑定

Parameters

string $key

参数名

mixed $value

绑定的变量及绑定参数

Returns

\Think\Model

setProperty()

setProperty(string  $name, mixed  $value) : \Think\Model

设置模型的属性值

Parameters

string $name

名称

mixed $value

Returns

\Think\Model

count()

count() : integer

count统计 配合where连贯操作

Returns

integer

getMongoNextId()

getMongoNextId(string  $pk = '') : mixed

获取下一ID 用于自动增长型

Parameters

string $pk

字段名 默认为主键

Returns

mixed

clear()

clear() 

command()

command(array  $command) : mixed

执行Mongo指令

Parameters

array $command

指令

Returns

mixed

mongoCode()

mongoCode(string  $code, array  $args = array()) : mixed

执行MongoCode

Parameters

string $code

MongoCode

array $args

参数

Returns

mixed

_checkTableInfo()

_checkTableInfo() : void

自动检测数据表信息

_initialize()

_initialize() 

_facade()

_facade(mixed  $data) : boolean

对保存到数据库的数据进行处理

Parameters

mixed $data

要操作的数据

Returns

boolean

_before_write()

_before_write(  $data) 

Parameters

$data

_before_insert()

_before_insert(  $data,   $options) 

Parameters

$data
$options

_after_insert()

_after_insert(  $data,   $options) 

Parameters

$data
$options

_before_update()

_before_update(  $data,   $options) 

Parameters

$data
$options

_after_update()

_after_update(  $data,   $options) 

Parameters

$data
$options

_before_delete()

_before_delete(  $options) 

Parameters

$options

_after_delete()

_after_delete(  $data,   $options) 

Parameters

$data
$options

_after_select()

_after_select(  $resultSet,   $options) 

Parameters

$resultSet
$options

_parseOptions()

_parseOptions(array  $options = array()) : array

分析表达式

Parameters

array $options

表达式参数

Returns

array

_options_filter()

_options_filter(  $options) 

Parameters

$options

_parseType()

_parseType(mixed  $data, string  $key) : void

数据类型检测

Parameters

mixed $data

数据

string $key

字段名

_read_data()

_read_data(array  $data) : array

数据读取后的处理

Parameters

array $data

当前数据

Returns

array

_after_find()

_after_find(  $result,   $options) 

Parameters

$result
$options

returnResult()

returnResult(  $data,   $type = '') 

Parameters

$data
$type

lazyWrite()

lazyWrite(string  $guid, integer  $step, integer  $lazyTime) : false|integer

延时更新检查 返回false表示需要延时 否则返回实际写入的数值

Parameters

string $guid

写入标识

integer $step

写入步进值

integer $lazyTime

延时时间(s)

Returns

false|integer

autoValidation()

autoValidation(array  $data, string  $type) : boolean

自动表单验证

Parameters

array $data

创建数据

string $type

创建类型

Returns

boolean

_validationField()

_validationField(array  $data, array  $val) : boolean

验证表单字段 支持批量验证 如果批量验证返回错误的数组信息

Parameters

array $data

创建数据

array $val

验证因子

Returns

boolean

_validationFieldItem()

_validationFieldItem(array  $data, array  $val) : boolean

根据验证因子验证字段

Parameters

array $data

创建数据

array $val

验证因子

Returns

boolean

parseSql()

parseSql(string  $sql, boolean  $parse) : string

解析SQL语句

Parameters

string $sql

SQL指令

boolean $parse

是否需要解析SQL

Returns

string

_after_db()

_after_db() 

checkMongoId()

checkMongoId(array  $result) : array

获取MongoId

Parameters

array $result

返回数据

Returns

array

autoOperation()

autoOperation(array  $data, string  $type) : mixed

自动表单处理

Parameters

array $data

创建数据

string $type

创建类型

Returns

mixed