Constants

MAX_STRUCTURED_SYMBOLS

MAX_STRUCTURED_SYMBOLS = 16

Max number of symbols for structured mode

MAX_STRUCTURED_SYMBOLS

MAX_STRUCTURED_SYMBOLS = 16

MAX_STRUCTURED_SYMBOLS

MAX_STRUCTURED_SYMBOLS = 16

N1

N1 = 3

N1

N1 = 3

Down point base value for case 1 mask pattern (concatenation of same color in a line or a column)

N1

N1 = 3

N2

N2 = 3

N2

N2 = 3

N2

N2 = 3

Down point base value for case 2 mask pattern (module block of same color)

N3

N3 = 40

N3

N3 = 40

N3

N3 = 40

Down point base value for case 3 mask pattern (1:1:3:1:1(dark:bright:dark:bright:dark)pattern in a line or a column)

N4

N4 = 10

N4

N4 = 10

N4

N4 = 10

Down point base value for case 4 mask pattern (ration of dark modules in whole)

QR_CACHE_DIR

QR_CACHE_DIR = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR

QR_CACHE_DIR

QR_CACHE_DIR = false

QR_CACHE_DIR

QR_CACHE_DIR = false

QR_CACHEABLE

QR_CACHEABLE = false

QR_CACHEABLE

QR_CACHEABLE = false

QR_CACHEABLE

QR_CACHEABLE = true

QR_DEFAULT_MASK

QR_DEFAULT_MASK = 2

QR_DEFAULT_MASK

QR_DEFAULT_MASK = 2

QR_DEFAULT_MASK

QR_DEFAULT_MASK = 2

QR_DEFAULT_MASK

QR_DEFAULT_MASK = 2

when QR_FIND_BEST_MASK === false

QR_ECLEVEL_H

QR_ECLEVEL_H = 3

Error correction level H : About 30% or less errors can be corrected.

QR_ECLEVEL_H

QR_ECLEVEL_H = 3

QR_ECLEVEL_H

QR_ECLEVEL_H = 3

QR_ECLEVEL_L

QR_ECLEVEL_L = 0

Error correction level L : About 7% or less errors can be corrected.

QR_ECLEVEL_L

QR_ECLEVEL_L = 0

QR_ECLEVEL_L

QR_ECLEVEL_L = 0

QR_ECLEVEL_M

QR_ECLEVEL_M = 1

QR_ECLEVEL_M

QR_ECLEVEL_M = 1

QR_ECLEVEL_M

QR_ECLEVEL_M = 1

Error correction level M : About 15% or less errors can be corrected.

QR_ECLEVEL_Q

QR_ECLEVEL_Q = 2

Error correction level Q : About 25% or less errors can be corrected.

QR_ECLEVEL_Q

QR_ECLEVEL_Q = 2

QR_ECLEVEL_Q

QR_ECLEVEL_Q = 2

QR_FIND_BEST_MASK

QR_FIND_BEST_MASK = true

QR_FIND_BEST_MASK

QR_FIND_BEST_MASK = true

QR_FIND_BEST_MASK

QR_FIND_BEST_MASK = true

QR_FIND_BEST_MASK

QR_FIND_BEST_MASK = true

if true, estimates best mask (spec. default, but extremally slow; set to false to significant performance boost but (propably) worst quality code

QR_FIND_FROM_RANDOM

QR_FIND_FROM_RANDOM = 2

if false, checks all masks available, otherwise value tells count of masks need to be checked, mask id are got randomly

QR_FIND_FROM_RANDOM

QR_FIND_FROM_RANDOM = 2

QR_FIND_FROM_RANDOM

QR_FIND_FROM_RANDOM = false

QR_FIND_FROM_RANDOM

QR_FIND_FROM_RANDOM = 2

QR_FORMAT_PNG

QR_FORMAT_PNG = 1

QR_FORMAT_PNG

QR_FORMAT_PNG = 1

QR_FORMAT_TEXT

QR_FORMAT_TEXT = 0

QR_FORMAT_TEXT

QR_FORMAT_TEXT = 0

QR_IMAGE

QR_IMAGE = true

QR_IMAGE

QR_IMAGE = true

QR_LOG_DIR

QR_LOG_DIR = false

QR_LOG_DIR

QR_LOG_DIR = false

QR_LOG_DIR

QR_LOG_DIR = dirname(__FILE__) . DIRECTORY_SEPARATOR

QR_MODE_8

QR_MODE_8 = 2

QR_MODE_8

QR_MODE_8 = 2

QR_MODE_8B

QR_MODE_8B = 2

Encoding mode 8bit byte data. In theory, 2953 characters or less can be stored in a QRcode.

QR_MODE_AN

QR_MODE_AN = 1

QR_MODE_AN

QR_MODE_AN = 1

Encoding mode alphanumeric (0-9A-Z $%*+-./:) 45characters. 2 characters are encoded to 11bit length. In theory, 4296 characters or less can be stored in a QRcode.

QR_MODE_AN

QR_MODE_AN = 1

QR_MODE_KANJI

QR_MODE_KANJI = 3

QR_MODE_KANJI

QR_MODE_KANJI = 3

QR_MODE_KJ

QR_MODE_KJ = 3

Encoding mode KANJI. A KANJI character (multibyte character) is encoded to 13bit length. In theory, 1817 characters or less can be stored in a QRcode.

QR_MODE_NL

QR_MODE_NL = -1

Encoding mode

QR_MODE_NM

QR_MODE_NM = 0

Encoding mode numeric (0-9). 3 characters are encoded to 10bit length. In theory, 7089 characters or less can be stored in a QRcode.

QR_MODE_NUL

QR_MODE_NUL = -1

QR_MODE_NUL

QR_MODE_NUL = -1

QR_MODE_NUM

QR_MODE_NUM = 0

QR_MODE_NUM

QR_MODE_NUM = 0

QR_MODE_ST

QR_MODE_ST = 4

Encoding mode STRUCTURED (currently unsupported)

QR_MODE_STRUCTURE

QR_MODE_STRUCTURE = 4

QR_MODE_STRUCTURE

QR_MODE_STRUCTURE = 4

QR_PNG_MAXIMUM_SIZE

QR_PNG_MAXIMUM_SIZE = 1024

QR_PNG_MAXIMUM_SIZE

QR_PNG_MAXIMUM_SIZE = 1024

QR_PNG_MAXIMUM_SIZE

QR_PNG_MAXIMUM_SIZE = 1024

QRCAP_EC

QRCAP_EC = 3

Matrix index to get error correction level from $capacity array.

QRCAP_EC

QRCAP_EC = 3

QRCAP_EC

QRCAP_EC = 3

QRCAP_REMINDER

QRCAP_REMINDER = 2

QRCAP_REMINDER

QRCAP_REMINDER = 2

QRCAP_REMINDER

QRCAP_REMINDER = 2

Matrix index to get remainder from $capacity array.

QRCAP_WIDTH

QRCAP_WIDTH = 0

QRCAP_WIDTH

QRCAP_WIDTH = 0

QRCAP_WIDTH

QRCAP_WIDTH = 0

Matrix index to get width from $capacity array.

QRCAP_WORDS

QRCAP_WORDS = 1

QRCAP_WORDS

QRCAP_WORDS = 1

Matrix index to get number of words from $capacity array.

QRCAP_WORDS

QRCAP_WORDS = 1

QRCODEDEFS

QRCODEDEFS = true

Indicate that definitions for this class are set

QRSPEC_VERSION_MAX

QRSPEC_VERSION_MAX = 40

Maximum QR Code version.

QRSPEC_VERSION_MAX

QRSPEC_VERSION_MAX = 40

QRSPEC_VERSION_MAX

QRSPEC_VERSION_MAX = 40

QRSPEC_WIDTH_MAX

QRSPEC_WIDTH_MAX = 177

Maximum matrix size for maximum version (version 40 is 177*177 matrix).

QRSPEC_WIDTH_MAX

QRSPEC_WIDTH_MAX = 177

QRSPEC_WIDTH_MAX

QRSPEC_WIDTH_MAX = 177

STRUCTURE_HEADER_BITS

STRUCTURE_HEADER_BITS = 20

Number of header bits for structured mode

STRUCTURE_HEADER_BITS

STRUCTURE_HEADER_BITS = 20

STRUCTURE_HEADER_BITS

STRUCTURE_HEADER_BITS = 20

TEST_PATH

TEST_PATH = __DIR__ . '/'

Functions

abort()

abort(integer|\think\Response  $code, string  $message = null, array  $header = array()) 

抛出HTTP异常

Parameters

integer|\think\Response $code

状态码 或者 Response对象实例

string $message

错误信息

array $header

参数

action()

action(string  $url, string|array  $vars = array(), string  $layer = 'controller', boolean  $appendSuffix = false) : mixed

调用模块的操作方法 参数格式 [模块/控制器/]操作

Parameters

string $url

调用地址

string|array $vars

调用参数 支持字符串和数组

string $layer

要调用的控制层名称

boolean $appendSuffix

是否添加类名后缀

Returns

mixed

addSmscodeInDb()

addSmscodeInDb(  $data = array(),   $db = "sms") : boolean

手机短信入库

Parameters

$data
$db

Returns

boolean

app()

app(string  $name = 'think\App', array  $args = array(), boolean  $newInstance = false) : object

快速获取容器中的实例 支持依赖注入

Parameters

string $name

类名或标识 默认获取当前应用实例

array $args

参数

boolean $newInstance

是否每次创建新的实例

Returns

object

base64_de()

base64_de(  $str) : boolean|string

字符串解密

Parameters

$str

Returns

boolean|string

base64_en()

base64_en(  $str) : string

字符串加密

Parameters

$str

Returns

string

behavior()

behavior(mixed  $behavior, mixed  $args = null) : mixed

执行某个行为(run方法) 支持依赖注入

Parameters

mixed $behavior

行为类名或者别名

mixed $args

参数

Returns

mixed

bind()

bind(string  $abstract, mixed  $concrete = null) : \think\Container

绑定一个类到容器

Parameters

string $abstract

类标识、接口

mixed $concrete

要绑定的类、闭包或者实例

Returns

\think\Container

cache()

cache(mixed  $name, mixed  $value = '', mixed  $options = null, string  $tag = null) : mixed

缓存管理

Parameters

mixed $name

缓存名称,如果为数组表示进行缓存设置

mixed $value

缓存值

mixed $options

缓存参数

string $tag

缓存标签

Returns

mixed

call()

call(mixed  $callable, array  $args = array()) : mixed

调用反射执行callable 支持依赖注入

Parameters

mixed $callable

支持闭包等callable写法

array $args

参数

Returns

mixed

captcha()

captcha(string  $id = '', array  $config = array()) : \think\Response

Parameters

string $id
array $config

Returns

\think\Response

captcha_check()

captcha_check(  $value, string  $id = '') : boolean

Parameters

$value
string $id

Returns

boolean

captcha_img()

captcha_img(  $id = '') : mixed

Parameters

$id

Returns

mixed

captcha_src()

captcha_src(  $id = '') : string

Parameters

$id

Returns

string

checkSmscode()

checkSmscode(string  $code, string  $phoneNum, integer  $type,   $db = 'sms') : string

检查验证码

Parameters

string $code

验证码

string $phoneNum

手机号

integer $type

业务类型

$db

Returns

string

class_basename()

class_basename(string|object  $class) : string

获取类名(不包含命名空间)

Parameters

string|object $class

Returns

string

class_uses_recursive()

class_uses_recursive(  $class) : array

获取一个类里所有用到的trait,包括父类的

Parameters

$class

Returns

array

composerRequire52222304d5bb7779a11d17849b1bbbb4()

composerRequire52222304d5bb7779a11d17849b1bbbb4(  $fileIdentifier,   $file) 

Parameters

$fileIdentifier
$file

config()

config(string|array  $name = '', mixed  $value = null) : mixed

获取和设置配置参数

Parameters

string|array $name

参数名

mixed $value

参数值

Returns

mixed

container()

container() : \think\Container

获取容器对象实例

Returns

\think\Container

controller()

controller(string  $name, string  $layer = 'controller', boolean  $appendSuffix = false) : \think\Controller

实例化控制器 格式:[模块/]控制器

Parameters

string $name

资源地址

string $layer

控制层名称

boolean $appendSuffix

是否添加类名后缀

Returns

\think\Controller

cookie()

cookie(string|array  $name, mixed  $value = '', mixed  $option = null) : mixed

Cookie管理

Parameters

string|array $name

cookie名称,如果为数组表示进行cookie设置

mixed $value

cookie值

mixed $option

参数

Returns

mixed

countSmscodeMaxTimes()

countSmscodeMaxTimes(string  $phoneNum, string  $type,   $db = 'sms') : boolean|string

统计每日短信发送次数

Parameters

string $phoneNum

手机号

string $type

业务类型

$db

Returns

boolean|string

create_csv()

create_csv(array  $data, string  $header = null, string  $filename = 'simple.csv') 

数据转csv格式的excle

Parameters

array $data

需要转的数组

string $header

要生成的excel表头

string $filename

生成的excel文件名 示例数组: $data = array( '1,2,3,4,5', '6,7,8,9,0', '1,3,5,6,7' ); $header='用户名,密码,头像,性别,手机号';

create_xls()

create_xls(array  $data, string  $filename = 'simple.xls') 

数组转xls格式的excel文件

Parameters

array $data

需要生成excel文件的数组

string $filename

生成的excel文件名 示例数据: $data = array( array(NULL, 2010, 2011, 2012), array('Q1', 12, 15, 21), array('Q2', 56, 73, 86), array('Q3', 52, 61, 69), array('Q4', 30, 32, 0), );

curl_request()

curl_request(string  $url, array  $data = array(), string  $method = 'post', array  $headers = array(), integer  $timeout = 10, boolean  $CA = false) : mixed

author william CURLOPT_SSL_VERIFYHOST的值 设为0表示不检查证书,设为1表示检查证书中是否有CN(common name)字段,设为2表示在1的基础上校验当前的域名是否与CN匹配 而libcurl早期版本中这个变量是boolean值,为true时作用同目前设置为2,后来出于调试需求,增加了仅校验是否有CN字段的选项,因此两个值true/false就不够用了,升级为0/1/2三个值。 再后来(libcurl_7.28.1之后的版本),这个调试选项由于经常被开发者用错,被去掉了,因此目前也不支持1了,只有0/2两种取值。

Parameters

string $url

请求链接

array $data

发送参数

string $method

请求方式

array $headers

设置的请求头

integer $timeout

超时时间

boolean $CA

HTTPS时是否进行严格认证

Returns

mixed

db()

db(string  $name = '', array|string  $config = array(), boolean  $force = true) : \think\db\Query

实例化数据库类

Parameters

string $name

操作的数据表名称(不含前缀)

array|string $config

数据库配置参数

boolean $force

是否强制重新连接

Returns

\think\db\Query

dbg()

dbg(mixed  $input, string  $filepath = '', boolean  $clean = false) 

日志打印

Parameters

mixed $input

被打印的数据

string $filepath

日志路径

boolean $clean

打印前是否清除文件

debug()

debug(string  $start, string  $end = '', integer|string  $dec = 6) : mixed

记录时间(微秒)和内存使用情况

Parameters

string $start

开始标签

string $end

结束标签

integer|string $dec

小数位 如果是m 表示统计内存占用

Returns

mixed

deleteFileFromOss()

deleteFileFromOss(string  $object, string  $bucket = '') : string

删除OSS上的文件

Parameters

string $object

要删除的文件

string $bucket

OSS的bucket名称

Returns

string

dump()

dump(mixed  $var, boolean  $echo = true, string  $label = null) : void|string

浏览器友好的变量输出

Parameters

mixed $var

变量

boolean $echo

是否输出 默认为true 如果为false 则返回输出字符串

string $label

标签 默认为空

Returns

void|string

env()

env(string  $name = null, string  $default = null) : mixed

获取环境变量值

Parameters

string $name

环境变量名(支持二级 .号分割)

string $default

默认值

Returns

mixed

exception()

exception(string  $msg, integer  $code, string  $exception = '') 

抛出异常处理

Parameters

string $msg

异常消息

integer $code

异常代码 默认为0

string $exception

异常类

Throws

\Exception

format_bytes()

format_bytes(\number  $size, string  $delimiter = '') : string

格式化字节大小

Parameters

\number $size

字节数

string $delimiter

数字和单位分隔符

Returns

string —

格式化后的带单位的大小

generateCode()

generateCode(integer  $nums, array  $exist_array = array(), integer  $code_length = 6, integer  $prefix = '') : array

生成各种码

Parameters

integer $nums

生成多少个优惠码

array $exist_array

排除指定数组中的优惠码

integer $code_length

生成优惠码的长度

integer $prefix

生成指定前缀

Returns

array —

返回优惠码数组

get_client_ip()

get_client_ip(integer  $type) : mixed

获取客户端IP地址

Parameters

integer $type

返回类型 0 返回IP地址 1 返回IPV4地址数字

Returns

mixed

halt()

halt(mixed  $var) 

调试变量并且中断输出

Parameters

mixed $var

调试变量或者信息

import_excel()

import_excel(string  $file) : array

导入excel文件

Parameters

string $file

excel文件路径

Returns

array —

excel文件内容数组

input()

input(string  $key = '', mixed  $default = null, string  $filter = null) : mixed

获取输入数据 支持默认值和过滤

Parameters

string $key

获取的变量名

mixed $default

默认值

string $filter

过滤方法

Returns

mixed

json()

json(mixed  $data = array(), integer  $code = 200, array  $header = array(), array  $options = array()) : \think\response\Json

获取\think\response\Json对象实例

Parameters

mixed $data

返回的数据

integer $code

状态码

array $header

头部

array $options

参数

Returns

\think\response\Json

jsonp()

jsonp(mixed  $data = array(), integer  $code = 200, array  $header = array(), array  $options = array()) : \think\response\Jsonp

获取\think\response\Jsonp对象实例

Parameters

mixed $data

返回的数据

integer $code

状态码

array $header

头部

array $options

参数

Returns

\think\response\Jsonp

lang()

lang(string  $name, array  $vars = array(), string  $lang = '') : mixed

获取语言变量值

Parameters

string $name

语言变量名

array $vars

动态变量值

string $lang

语言

Returns

mixed

model()

model(string  $name = '', string  $layer = 'model', boolean  $appendSuffix = false) : \think\Model

实例化Model

Parameters

string $name

Model名称

string $layer

业务层名称

boolean $appendSuffix

是否添加类名后缀

Returns

\think\Model

oss_init()

oss_init() : \OssClient

初始化OSS配置

Returns

\OssClient

parse_name()

parse_name(string  $name, integer  $type, boolean  $ucfirst = true) : string

字符串命名风格转换 type 0 将Java风格转换为C的风格 1 将C风格转换为Java的风格

Parameters

string $name

字符串

integer $type

转换类型

boolean $ucfirst

首字母是否大写(驼峰规则)

Returns

string

phoneNumMosaic()

phoneNumMosaic(mixed  $num) : string

手机号打码(155****4536)

Parameters

mixed $num

手机号码

Returns

string

qr()

qr(string  $content = '', string  $qr = '', string  $logo = '', string  $level = 'L', string  $size = '6') : string

生成二维码图片,下载地址https://sourceforge.net/projects/phpqrcode/files/

Parameters

string $content

内容

string $qr

二维码地址

string $logo

logo地址

string $level

容错等级

string $size

图片大小

Returns

string

randStr()

randStr(  $len) : boolean|string

返回指定长度的随机字符

Parameters

$len

Returns

boolean|string

redirect()

redirect(mixed  $url = array(), array|integer  $params = array(), integer  $code = 302) : \think\response\Redirect

获取\think\response\Redirect对象实例

Parameters

mixed $url

重定向地址 支持Url::build方法的地址

array|integer $params

额外参数

integer $code

状态码

Returns

\think\response\Redirect

request()

request() : \think\facade\Request

获取当前Request对象实例

Returns

\think\facade\Request

response()

response(mixed  $data = array(), integer|string  $code = 200, array  $header = array(), string  $type = 'html') : \think\Response

创建普通 Response 对象实例

Parameters

mixed $data

输出数据

integer|string $code

状态码

array $header

头信息

string $type

Returns

\think\Response

route()

route(string  $rule, mixed  $route, array  $option = array(), array  $pattern = array()) : \think\route\RuleItem

路由注册

Parameters

string $rule

路由规则

mixed $route

路由地址

array $option

路由参数

array $pattern

变量规则

Returns

\think\route\RuleItem

session()

session(string|array  $name, mixed  $value = '', string  $prefix = null) : mixed

Session管理

Parameters

string|array $name

session名称,如果为数组表示进行session设置

mixed $value

session值

string $prefix

前缀

Returns

mixed

shuffle_assoc()

shuffle_assoc(array  $array) : array

打乱数组,保持键值对关系

Parameters

array $array

Returns

array

slog()

slog(mixed  $data) 

远程调试工具,使用 SocketLog 插件工具,将需要跟踪的变量输出到浏览器中 等效于调试用的 trace()函数

Parameters

mixed $data

打印内容

str_split()

str_split(string  $string, integer  $split_length = 1) : \If

Convert a string to an array (needed for PHP4 compatibility)

Parameters

string $string

The input string.

integer $split_length

Maximum length of the chunk.

Returns

\If —

the optional split_length parameter is specified, the returned array will be broken down into chunks with each being split_length in length, otherwise each chunk will be one character in length. FALSE is returned if split_length is less than 1. If the split_length length exceeds the length of string , the entire string is returned as the first (and only) array element.

time_tran()

time_tran(string  $the_time) : string

时间对比,生成多少分钟(天)(月)(年)前

Parameters

string $the_time

要对比的时间

Returns

string

token()

token(string  $name = '__token__', mixed  $type = 'md5') : string

生成表单令牌

Parameters

string $name

令牌名称

mixed $type

令牌生成方法

Returns

string

trace()

trace(mixed  $log = '[think]', string  $level = 'log') : array|void

记录日志信息

Parameters

mixed $log

log信息 支持字符串和数组

string $level

日志级别

Returns

array|void

trait_uses_recursive()

trait_uses_recursive(string  $trait) : array

获取一个trait里所有引用到的trait

Parameters

string $trait

Returns

array

uploadFileToOss()

uploadFileToOss(string  $object, string  $path, string  $bucket = '') : string

上传文件到OSS

Parameters

string $object

上传到OSS后生成的文件名,如果含有路径会自动生成对应的目录 (image/2017/25234523432.png 会自动创建image目录和其子目录2017,/image/2017/25234523432.png这种格式是错误的)

string $path

本地文件的路径

string $bucket

OSS的bucket名称

Returns

string

url()

url(string  $url = '', string|array  $vars = '', boolean|string  $suffix = true, boolean|string  $domain = false) : string

Url生成

Parameters

string $url

路由地址

string|array $vars

变量

boolean|string $suffix

生成的URL后缀

boolean|string $domain

域名

Returns

string

validate()

validate(string  $name = '', string  $layer = 'validate', boolean  $appendSuffix = false) : \think\Validate

实例化验证器

Parameters

string $name

验证器名称

string $layer

业务层名称

boolean $appendSuffix

是否添加类名后缀

Returns

\think\Validate

view()

view(string  $template = '', array  $vars = array(), integer  $code = 200,   $filter = null) : \think\response\View

渲染模板输出

Parameters

string $template

模板文件

array $vars

模板变量

integer $code

状态码

$filter

Returns

\think\response\View

widget()

widget(string  $name, array  $data = array()) : mixed

渲染输出Widget

Parameters

string $name

Widget名称

array $data

传入的参数

Returns

mixed

xml()

xml(mixed  $data = array(), integer  $code = 200, array  $header = array(), array  $options = array()) : \think\response\Xml

获取\think\response\Xml对象实例

Parameters

mixed $data

返回的数据

integer $code

状态码

array $header

头部

array $options

参数

Returns

\think\response\Xml