File: system.php
源文件路径: /Helper/system.php
说明:
系统默认函数库
array2html [line 601]
string array2html(
array $data)
|
|
将数组转换数据为字符串表示的形式,支持其中变量设置
Parameters
array2string [line 582]
string array2string(
array $data, [bool $isSlashes = true])
|
|
将数组转换为字符串
Parameters
array |
$data |
|
bool |
$isSlashes |
|
array_map_deep [line 318]
void array_map_deep(
array $array, string $func, [bool $applyKey = false])
|
|
使用特定function对数组中所有元素做处理
Parameters
array |
$array |
需要处理的数组 |
string |
$func |
对数组处理的函数 |
bool |
$applyKey |
是否同时处理数组键名 |
assets [line 1004]
void assets(
string $file, [string $type = ''], [bool $check = false], [string $default = 'default'])
|
|
导入静态文件路径 如:'js/show.js@daoke:home',则返回/assets/app/home/daoke/js/show.js
Parameters
string |
$file |
文件模式路径 |
string |
$type |
文件类型 |
bool |
$check |
是否检查存在,如果不存在返回空 |
string |
$default |
如果不存在,默认的风格包名称 |
base64 [line 341]
string base64(
array|string $data, [string $type = 'ENCODE'], [array|string $filter = null], [string $strip = 0])
|
|
改进后base64加密或解密
Parameters
array|string |
$data |
数据 |
string |
$type |
处理类型:ENCODE为加密,DECODE为解密,默认为ENCODE |
array|string |
$filter |
第一个参数为数组时,过滤的键名,默认为NULL |
string |
$strip |
是否对部分字符进行处理,处理后符合URL编码规范,默认为0(不处理) |
C [line 1395]
mixed C(
[string $key = ''], [string $default = ''])
|
|
获取系统配置信息
Parameters
string |
$key |
获取配置的名称,可以使用“配置名.键名1.键名2”的格式 |
string |
$default |
默认值 |
cut_str [line 222]
string cut_str(
string $sourcestr, [number $cutlength = 80], [bool $addfoot = true], [bool &$isAdd = false])
|
|
主要用于截取从0开始的任意长度的字符串(完整无乱码)
Parameters
string |
$sourcestr |
待截取的字符串 |
number |
$cutlength |
截取长度 |
bool |
$addfoot |
是否添加"..."在末尾 |
bool |
&$isAdd |
是否进行过截取操作 |
dump [line 99]
void|mixed dump(
mixed $var, [bool $isReturn = false])
|
|
输出变量信息
Parameters
mixed |
$var |
变量 |
bool |
$isReturn |
是否返回值 |
e [line 1435]
\Exception e(
mixed $error, [int|array $code = 404])
|
|
生成错误异常
Parameters
mixed |
$error |
参数名称 |
int|array |
$code |
错误码,也可以传入一个包括code键的数组 |
env [line 1108]
string env(
string $key, [string $default = null])
|
|
获取环境变量(键名不区分大小写)
Parameters
string |
$key |
键名称 |
string |
$default |
默认值 |
F [line 1196]
mixed F(
string $name, [mixed $value = ''], [string $path = null])
|
|
快速文件数据读取和保存 针对简单类型数据 字符串、数组
Parameters
string |
$name |
缓存名称 |
mixed |
$value |
缓存值 |
string |
$path |
缓存路径 |
fastlog [line 17]
int fastlog(
mixed $content, [int $isAppend = true], [string $file = 'system.log'])
|
|
快速日志记录(支持日志分割及文件增量清理)
Parameters
mixed |
$content |
日志内容 |
int |
$isAppend |
是否附加内容 |
string |
$file |
日志文件名 |
fileext [line 531]
string fileext(
string $filename, [string $default = 'jpg'], [int $maxExtLen = 5])
|
|
取得文件扩展名(小写)
Parameters
string |
$filename |
文件名 |
string |
$default |
默认扩展名 |
int |
$maxExtLen |
允许获取扩展名的最大长度 |
filelist [line 163]
array filelist(
[string $dir = '.'], [string $type = '*'])
|
|
从指定目录根据知道路径读取文件列表(只检索当前目录)
Parameters
string |
$dir |
需要获取的目录 |
string |
$type |
过滤文件类型 |
G [line 1130]
mixed G(
string $start, [string $end = ''], [int|string $dec = 4])
|
|
记录和统计时间(微秒)和内存使用情况 使用方法:
echo G('begin','end',6 ); //统计区间运行时间 精确到小数后6位
echo G('begin','end','m'); //统计区间内存使用情况
如果end标记位没有定义,则会自动以当前作为标记位 统计内存使用需要 MEMORY_LIMIT_ON 常量为true才有效
Parameters
string |
$start |
开始标签 |
string |
$end |
结束标签 |
int|string |
$dec |
小数位或者m |
getip [line 121]
string getip(
[int $isOnline = 0])
|
|
获取真实IP地址
Parameters
get_remote_file [line 710]
string|int|null get_remote_file(
string $url, [array|string|int $data = null], [array|string|int $headers = null], [string|int $savepath = null], [int $timeout = 5])
|
|
获取远程文件(自动支持GET/POST方法)
Parameters
string |
$url |
文件地址或配置信息 |
array|string|int |
$data |
数组为POST参数,字符串为保存路径,整数为请求超时 |
array|string|int |
$headers |
数组为设置请求头信息,字符串为保存路径,整数为请求超时 |
string|int |
$savepath |
字符串为文件保存路径,整数为请求超时 |
int |
$timeout |
请求超时(单位:秒),默认5秒 |
http_request [line 781]
string|int|null http_request(
array|string $config, [array|string $data = null], [array $headers = null])
|
|
HTTP请求
Parameters
array|string |
$config |
参数配置或url |
array|string |
$data |
POST参数(第1个参数为url时有效) |
array |
$headers |
请求头参数(第1个参数为url时有效) |
L [line 1456]
string L(
string $message, [array $datas = []])
|
|
语言转化 使用范例: L('hello: {name}', ['name'=>'steeze'])
Parameters
string |
$message |
语言键名 |
array |
$datas |
参数变量数组 |
M [line 1249]
\Library\Model M(
[string $name = ''], [mixed $conn = ''])
|
|
模型快速操作 $conn参数为字符串类型时举例说明:
1、"xxx": 使用"xxx"为连接名称,表前缀使用连接配置;
2、"^aaa_@xxx"(或"^@xxx"): 使用"aaa_"(或为空)为表前缀,xxx为连接名称;
3、"^aaa_"(或"^"): 使用"aaa_"(或为空)为表前缀,连接名称使用系统默认配置
Parameters
string |
$name |
需要操作的表 |
mixed |
$conn |
为字符串时,如果以"^xxx"开头,表示表前缀,否则表示数据库配置名;如果为数组,表示配置 |
make [line 1091]
object 类型实例 make(
string $concrete, [array $parameters = []], [\Library\Container $container = null])
|
|
从容器中返回给定类型名称的实例
Parameters
string |
$concrete |
类型名称 |
array |
$parameters |
参数 |
\Library\Container |
$container |
使用的容器对象,为null则使用系统容器 |
parse_name [line 506]
string parse_name(
string $name, [integer $type = 0])
|
|
字符串命名风格转换
Parameters
string |
$name |
字符串 |
integer |
$type |
转换类型,0:输出C的风格(下划线分割)、1:输出Java的风格(驼峰式) |
random [line 549]
string random(
int $length, [string $chars = '0123456789'])
|
|
从提供的字符串中,产生随机字符串
Parameters
int |
$length |
输出长度 |
string |
$chars |
范围字符串,默认为:0123456789 |
S [line 1161]
mixed S(
mixed $name, [mixed $value = ''], [mixed $options = null])
|
|
缓存管理
Parameters
mixed |
$name |
缓存名称,如果为数组表示进行缓存设置 |
mixed |
$value |
缓存值 |
mixed |
$options |
缓存参数 |
safe_replace [line 673]
string safe_replace(
array|string $data)
|
|
安全过滤函数
Parameters
session [line 859]
mixed session(
[string|array $name = ''], [mixed $value = ''])
|
|
session管理函数
Parameters
string|array |
$name |
session名称 如果为数组则表示进行session设置 |
mixed |
$value |
session值 |
simplify_ds [line 203]
string simplify_ds(
string $path)
|
|
简化路径
Parameters
sizeformat [line 132]
string sizeformat(
int $size, [number $bits = 2])
|
|
转换字节数为其他单位
Parameters
slashes [line 637]
string|array slashes(
$data, [bool $isAdd = true], string|array $data,字符串或数组对象)
|
|
返回经addslashes处理过的字符串或数组
Parameters
string|array |
$data,字符串或数组对象 |
|
bool |
$isAdd |
是否为添加slashes,默认为true |
|
$data |
|
string2array [line 564]
array string2array(
string $data)
|
|
将字符串转换为数组
Parameters
strlen_utf8 [line 283]
string strlen_utf8(
string $str)
|
|
统计utf-8字符长度
Parameters
sys_auth [line 378]
string sys_auth(
string $str, [string $operation = 'ENCODE'], [string $key = ''], [string $expiry = 0])
|
|
系统动态加密解密可以设置过期时间的字符串(通常用于授权)
Parameters
string |
$str |
需要处理的字符串 |
string |
$operation |
处理类型:ENCODE为加密,DECODE为解密,默认为ENCODE |
string |
$key |
自定义秘钥,默认为空 |
string |
$expiry |
过期时间,默认为0,不限制 |
sys_crypt [line 413]
string sys_crypt(
string $str, [string $type = 1], [string $key = ''])
|
|
系统加密解密的字符串
Parameters
string |
$str |
需要处理的字符串 |
string |
$type |
处理类型:1为加密,0为解密,默认为1 |
string |
$key |
自定义秘钥,默认为空 |
template [line 434]
string template(
[string $template = 'index'], [string|bool $dir = ''], [string|bool $style = ''], [string $module = ''], [bool $isCompile = true])
|
|
处理界面模板(包括管理后台、前台和插件)
Parameters
string |
$template |
模板文件名,不包括扩展名(.html) |
string|bool |
$dir |
为string时为模板在目录,相对于模板目录;为bool时是否强制调用(true:后台模板,false:前台模板) |
string|bool |
$style |
为string时为使用的风格;为bool时是否强制调用(true:后台模板,false:前台模板) |
string |
$module |
模块名称 |
bool |
$isCompile |
是否需要编译,如果为true,返回编译后的路径,否则返回模板路径 |
thumb [line 193]
string thumb(
string $imgUrl, [number $maxWidth = 0], [number $maxHeight = 0], [number $cutType = 0], [string $defaultImg = ''], [number $isGetRemot = 0])
|
|
生成缩略图
Parameters
string |
$imgUrl |
需要处理的字符串 |
number |
$maxWidth |
限制宽度,默认为0(不限制) |
number |
$maxHeight |
限制高度,默认为0(不限制) |
number |
$cutType |
剪裁类型,为0不剪裁,为1缩小剪裁,为2放大剪裁 |
string |
$defaultImg |
图片不存在默认图片 |
number |
$isGetRemot |
是否获取远程图片 |
timeformat [line 143]
string timeformat(
int $tm)
|
|
转换字节数为其他单位
Parameters
to_string [line 485]
string to_string(
mixed $data, [int $option = null])
|
|
将对象或数组转换为JSON字符串
Parameters
mixed |
$data |
带转换的对象或数组 |
int |
$option |
转换选项 |
trace [line 74]
void|array trace(
[string $value = null], [string $label = ''], [string $level = 'DEBUG'], [boolean $record = false])
|
|
添加和获取页面Trace记录
Parameters
string |
$value |
变量 |
string |
$label |
标签 |
string |
$level |
日志级别(或者页面Trace的选项卡) |
boolean |
$record |
是否记录日志 |
trim_script [line 653]
string trim_script(
string $data)
|
|
转义 javascript 代码标记
Parameters
U [line 1292]
string U(
[string $url = ''], [string|array $vars = ''], [boolean $domain = false], [integer $type = -1])
|
|
URL组装 支持不同URL模式 使用方式说明:
1、外部地址解析(地址以“http://”或“https://”开头):
U('http://www.baidu.com','name=spring&id=2')
返回:http://www.baidu.com?name=spring&id=2
2、本地绝对地址解析(地址以“/”开头):
U('/api/','name=spring&id=2',true)
返回:http://www.h928.com/api/?name=spring&id=2
3、本地插件地址解析(地址以“:”开头):
U(':houserent/add','name=spring&id=2')
返回:/index.php?plugin_c=houserent&plugin_a=add&name=spring&id=2
4、本地控制器地址解析:
U('houserent/add','name=spring&id=2')
返回:/index.php?c=houserent&a=add&name=spring&id=2
Parameters
string |
$url |
URL表达式,格式:'[:][模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2...' |
string|array |
$vars |
传入的参数,支持数组和字符串 |
boolean |
$domain |
是否显示域名 |
integer |
$type |
使用的URL类型,为-1系统自动判断,为0前端,为1后台 |
Powered by Steeze. author email: spring.wind2006@163.com
|