zb_system/functionc_system_common.php

辅助通用函数.

Functions

GetScheme()

GetScheme(  $array) : \$string

得到请求协议(考虑到反向代理等原因,未必准确) 如果想获取准确的值,请zbp->Load后使用$zbp->isHttps.

Parameters

$array

Returns

\$string

GetWebServer()

GetWebServer() : integer

获取服务器.

Returns

integer

GetSystem()

GetSystem() : integer

获取操作系统

Returns

integer

GetPHPEngine()

GetPHPEngine() : integer

获取PHP解析引擎.

Returns

integer

GetPHPVersion()

GetPHPVersion() : string

获取PHP Version.

Returns

string

AutoloadClass()

AutoloadClass(string  $className) : mixed

自动加载类文件.

Parameters

string $className

类名

Returns

mixed

Logs()

Logs(string  $logString, boolean  $isError = false) : boolean

记录日志.

Parameters

string $logString
boolean $isError

Returns

boolean

RunTime()

RunTime(boolean  $isOutput = true) : array

输出页面运行时长

Parameters

boolean $isOutput

是否输出(考虑历史原因,默认输出)

Returns

array

GetEnvironment()

GetEnvironment() : string

获得系统信息.

Returns

string —

系统信息

plugin_dir_url()

plugin_dir_url(string  $file) : string

通过文件获取应用URL地址

Parameters

string $file

文件名

Returns

string —

返回URL地址

plugin_dir_path()

plugin_dir_path(  $file) : string

通过文件获取应用目录路径.

Parameters

$file

Returns

string

GetValueInArray()

GetValueInArray(array  $array, string  $name) : mixed

通过Key从数组获取数据.

Parameters

array $array

数组名

string $name

下标key

Returns

mixed

GetValueInArrayByCurrent()

GetValueInArrayByCurrent(string  $array, string  $name) : mixed

获取数组中的当前元素数据.

Parameters

string $array

数组名

string $name

下标key

Returns

mixed

SplitAndGet()

SplitAndGet(string  $string, string  $delimiter = ';', integer  $n) : string

分割string并取某项数据.

Parameters

string $string
string $delimiter
integer $n

Returns

string

RemoveMoreSpaces()

RemoveMoreSpaces(  $s) : null|string|array<mixed,string>

删除连续空格

Parameters

$s

Returns

null|string|array<mixed,string>

GetGuid()

GetGuid() : string

获取Guid.

Returns

string

GetVars()

GetVars(string  $name, string  $type = 'REQUEST') : mixed|null

获取参数值

Parameters

string $name

数组key名

string $type

默认为REQUEST

Returns

mixed|null

GetVarsByDefault()

GetVarsByDefault(string  $name, string  $type = 'REQUEST', string  $default = null) : mixed|null

获取参数值(可设置默认返回值).

Parameters

string $name

数组key名

string $type

默认为REQUEST

string $default

默认为null

Returns

mixed|null

GetDbName()

GetDbName() : string

获取数据库名.

Returns

string —

返回一个随机的SQLite数据文件名

GetCurrentHost()

GetCurrentHost(string  $blogpath,   $cookiesPath) : string

获取当前网站地址

Parameters

string $blogpath

网站域名

$cookiesPath

Returns

string —

返回网站完整地址,如http://localhost/zbp/

GetHttpContent()

GetHttpContent(string  $url) : string

通过URL获取远程页面内容.

Parameters

string $url

URL地址

Returns

string —

返回页面文本内容,默认为null

GetDirsInDir()

GetDirsInDir(string  $dir) : array

获取目录下文件夹列表.

Parameters

string $dir

目录

Returns

array —

文件夹列表

GetFilesInDir()

GetFilesInDir(string  $dir, string  $type) : array

获取目录下指定类型文件列表.

Parameters

string $dir

目录

string $type

文件类型,以|分隔

Returns

array —

文件列表

RedirectByScript()

RedirectByScript(string  $url) 

用script标签进行跳转.

Parameters

string $url

跳转链接

Redirect()

Redirect(string  $url) 

302跳转.

Parameters

string $url

跳转链接

Redirect301()

Redirect301(string  $url) 

301跳转.

Parameters

string $url

跳转链接

Http304()

Http304(string  $filename, string  $time) 

设置304缓存头.

Parameters

string $filename

文件名

string $time

缓存时间

GetGuestIP()

GetGuestIP() : string

获取客户端IP.

Returns

string —

返回IP地址

GetGuestAgent()

GetGuestAgent() : string

获取客户端Agent.

Returns

string —

返回Agent

GetRequestUri()

GetRequestUri() : string

获取请求来源URL.

Returns

string —

返回URL

GetFileExt()

GetFileExt(string  $f) : string

获取文件后缀名.

Parameters

string $f

文件名

Returns

string —

返回小写的后缀名

GetFilePermsOct()

GetFilePermsOct(string  $f) : string|null

获取文件权限.

Parameters

string $f

文件名

Returns

string|null —

返回文件权限,数值格式,如0644

GetFilePerms()

GetFilePerms(string  $f) : string|null

获取文件权限.

Parameters

string $f

文件名

Returns

string|null —

返回文件权限,字符表达格式,如-rw-r--r--

AddNameInString()

AddNameInString(string  $s, string  $name) : string

向字符串型的参数表加入一个新参数.

Parameters

string $s

字符串型的参数表,以|符号分隔

string $name

参数名

Returns

string —

返回新字符串,以|符号分隔

DelNameInString()

DelNameInString(string  $s, string  $name) : string

从字符串型的参数表中删除一个参数.

Parameters

string $s

字符串型的参数表,以|符号分隔

string $name

参数名

Returns

string —

返回新字符串,以|符号分隔

HasNameInString()

HasNameInString(string  $s, string  $name) : boolean

在字符串参数值查找参数.

Parameters

string $s

字符串型的参数表,以|符号分隔

string $name

参数名

Returns

boolean

JsonError4ShowErrorHook()

JsonError4ShowErrorHook(  $errorCode,   $errorString,   $file,   $line) 

以JSON形式输出错误信息(用于ShowError接口).

Parameters

$errorCode
$errorString
$file
$line

JsonError()

JsonError(string  $errorCode, string  $errorString, object  $data) 

以JSON形式输出错误信息.(err code为(int)0认为是没有错误,所以把0转为1)

Parameters

string $errorCode

错误编号

string $errorString

错误内容

object $data

具体内容

JsonReturn()

JsonReturn(  $data) 

当代码正常运行时,以JSON形式输出信息.

Parameters

$data

RespondError()

RespondError(  $errorCode,   $errorString = '',   $file = '',   $line = '') : void

XML-RPC应答错误页面.

Parameters

$errorCode
$errorString
$file
$line

ScriptError()

ScriptError(string  $errorCode,   $errorText = '',   $file = '',   $line = '') : void

XML-RPC脚本错误页面.

Parameters

string $errorCode

错误提示字符串

$errorText
$file
$line

CheckRegExp()

CheckRegExp(string  $source, string  $para) : boolean

验证字符串是否符合正则表达式.

Parameters

string $source

字符串

string $para

正则表达式,可用[username]|[password]|[email]|[homepage]或自定义表达式

Returns

boolean

FormatString()

FormatString(string  $source, string  $para) : string

格式化字符串.

Parameters

string $source

字符串

string $para

正则表达式,可用[html-format]|[nohtml]|[noscript]|[enter]|[noenter]|[filename]|[normalname]或自定义表达式

Returns

string

TransferHTML()

TransferHTML(  $source,   $param) 

Parameters

$source
$param

CloseTags()

CloseTags(string  $html) : string

封装HTML标签.

Parameters

string $html

html源码

Returns

string

SubStrUTF8_Start()

SubStrUTF8_Start(string  $sourcestr, integer  $start, integer  $cutlength) : string

获取UTF8格式的字符串的子串.

Parameters

string $sourcestr

源字符串

integer $start

起始位置

integer $cutlength

子串长度

Returns

string

SubStrUTF8()

SubStrUTF8(string  $sourcestr, integer  $cutlength) : string

获取UTF8格式的字符串的子串.

Parameters

string $sourcestr

源字符串

integer $cutlength

子串长度

Returns

string

SubStrUTF8_Html()

SubStrUTF8_Html(string  $source, integer  $length) : string

截取HTML格式的UTF8格式的字符串的子串.

Parameters

string $source

源字符串

integer $length

子串长度

Returns

string

RemoveBOM()

RemoveBOM(string  $s) : string

删除文件BOM头.

Parameters

string $s

文件内容

Returns

string

GetTimeZoneByGMT()

GetTimeZoneByGMT(integer  $z) : string

获取指定时区名.

Parameters

integer $z

时区号

Returns

string —

时区名

htmlspecialchars_array()

htmlspecialchars_array(array  $array) : array

对数组内的字符串进行htmlspecialchars.

Parameters

array $array

待过滤字符串

Returns

array

FilterCorrectName()

FilterCorrectName(string  $s) : string|array<mixed,string>

获得一个只含数字字母和-线的string.

Parameters

string $s

待过滤字符串

Returns

string|array<mixed,string>

CheckCanBeString()

CheckCanBeString(object  $obj) : boolean

确认一个对象是否可被转换为string.

Parameters

object $obj

Returns

boolean

BuildSafeURL()

BuildSafeURL(string  $url, string  $appId = '') : string

构造带Token的安全URL.

Parameters

string $url
string $appId

应用ID,可以生成一个应用专属的Token

Returns

string

BuildSafeCmdURL()

BuildSafeCmdURL(string  $paramters) : boolean

构造cmd.php的访问链接.

Parameters

string $paramters

cmd.php参数

Returns

boolean

utf84mb_filter()

utf84mb_filter(  $sql) 

Parameters

$sql

utf84mb_fixHtmlSpecialChars()

utf84mb_fixHtmlSpecialChars() 

utf84mb_convertToUCS4()

utf84mb_convertToUCS4(  $matches) 

Parameters

$matches

utf84mb_convertToUTF8()

utf84mb_convertToUTF8(  $matches) 

Parameters

$matches

VerifyWebToken()

VerifyWebToken(  $webTokenString,   $webTokenId, string  $key = '') : boolean

验证Web Token是否合法.

Parameters

$webTokenString
$webTokenId
string $key

Returns

boolean

CreateWebToken()

CreateWebToken(  $webTokenId,   $time, string  $key = '') : string

创建Web Token.

Parameters

$webTokenId
$time
string $key

Returns

string

CheckIsRefererValid()

CheckIsRefererValid() 

检测来源是否合法,这包括CSRF检测,在开启增强安全模式时加入来源检测.

Throws

\Exception

CheckCSRFTokenValid()

CheckCSRFTokenValid(string  $fieldName = 'csrfToken', array  $methods = array('get', 'post')) : boolean

验证CSRF Token是否合法.

Parameters

string $fieldName
array $methods

Returns

boolean

CheckHTTPRefererValid()

CheckHTTPRefererValid() : boolean

检测HTTP Referer是否合法.

Returns

boolean

RemovePHPCode()

RemovePHPCode(string  $code) : string

清除一串代码内所有的PHP代码

Parameters

string $code

Returns

string

GetIDArrayByList()

GetIDArrayByList(  $array,   $keyname = null) 

Parameters

$array
$keyname

GetBackendCSPHeader()

GetBackendCSPHeader() 

CheckIncludedFiles()

CheckIncludedFiles(  $file) 

检查重复加载的.

Parameters

$file