系统函数

1.基本概念:

   在程序中实现特定功能的代码段。

   封装函数,可以提高代码的复用率。

2.声明语法:

1).语法

function函数名([参数列表]){

函数体

[return]

}

3.五要素

function关键字

函数名

参数列表

函数体

返回值


4.调用语法

1).语法

函数名([参数1,参数2,...]);

5.函数名

1) 命名规则

同标识符命名(字母数字下滑线组成,不能以数字开头)。

cookie 方法

作用:自动加上系统cookie前缀并返回cookie值

语法:string cookie($name= '')

参数:$name 需要得到的cookie名称(不含前缀)

示例:

cookie('uid');

encrypt 方法

作用:加密字符串并返回加密结果

语法:string encrypt($txt, $key = '')

参数:    $txt 待加密的字符串

$key 密钥

示例:

encrypt('password','cb8d4e597fc751a56dc30258c4db1226'); // 输出KHEZ1IzRZpLV9Bg

decrypt 方法

作用:解密字符串

语法:string decrypt($txt, $key = '')

参数:    $txt 待解密的字符串

$key 密钥

示例:

decrypt('KHEZ1IzRZpLV9Bg','cb8d4e597fc751a56dc30258c4db1226'); // 输出password

getIp 方法

作用:取得IP地址

语法:getIp()

getReferer 方法

作用:取得上一步来源地址

语法:string geReferer()

Model 方法

作用:实例化模型

语法:object Model($model = null)

参数:$model 待实例的模型,$model也可以为空,这样会实例化一个空模型

示例:

$model = Model();

//或

$model = Model('member');

redirect 方法

作用:页面重定向

语法:redirect ($url= '')

参数:$url 需要重定向的地址,若为空,系统定向到上一页地址

示例:

redirect('http://www.shopnc.net')

readDirList 方法

作用:读取同目录下的文件夹并返回数组

语法:array readDirList($path)

参数:$path 需要读取的目录

示例:

readDirList('/var/www/shopnc');

//输出

Array

(

     [0] => admin

     [1] => cache

     [2] => control

     [3] => framework

     [4] => upload

)

replaceSpecialChar 方法

作用:转换特殊字符,将里面的 \r\n,\t,\n去除

语法:string replaceSpecialChar ($string)

参数:$string 需要转换的字符

setNcCookie 方法

作用:保存cookie

语法:setNcCookie($name, $value, $expire='3600', $path='', $domain='', $secure=false)

参数:    $name cookie名称

              $value cookie值

              $expire cookie有效期,单位秒,默认3600

              $path cookie 的服务器路径 默认为 /

              $domain cookie 的域名

              $secure 是否通过安全的 HTTPS 连接来传输 cookie,默认为false

示例:

setNcCookie('uid',1000,2*3600);   // 保存2小时

setNcCookie('uid','',time()-3600);  // 过期

showMessage 方法

作用:输出提示信息

语法:

showMessage($msg,$url='',$show_type='html',$msg_type='succ',$is_show=1,$time=2000)

参数:   

$msg 待输出的信息

$url 跳转地址 当$url为数组时,结构为 array('msg'=>'跳转连接文字','url'=>'跳转连接')

$show_type 输出格式 默认为html

$msg_type 信息类型 succ 为成功,error为失败/错误

$is_show  是否显示跳转链接,默认是为1,显示

$time 跳转时间,默认为2秒

示例:

showMessage('保存成功');

showMessage('保存失败','index.php?act=brand','html','error');

showDialog 方法

作用:消息提示,只适用于页面AJAX提交的情况

语法:showDialog($message = '', $url = '', $alert_type = 'error', $extrajs = '', $time = 2)

参数:

$message 消息内容

$url 提示完后的URL去向

$alert_type 提示类型 error/succ/notice 分别为错误/成功/警示

$extrajs 扩展JS脚本

$time 消息停留时间,默认为2秒

示例:

showDialog('保存成功','index.php?act=voucher&op=list');

setTimeZone 方法

作用:设置时区

语法:showDialog($message = '', $url = '', $alert_type = 'error', $extrajs = '', $time = 2)

参数:    $time_zone 时区键值

示例:

setTimeZone(8); //设置东8区

showEditor 方法

作用:输出编辑器

语法:

showEditor($id, $value='', $width='700px', $height='300px',

$style='visibility:hidden;',$upload_state="true", $media_open=false)

参数:

$id 编辑器id名称,与name同名

$value 编辑器内容

$width 宽 带单位px

$height 高 带单位px

$style 样式内容

$upload_state 上传状态,默认开启

示例:

showEditor('content','这是内容','600px','400px','visibility:hidden;','false','false');

getDirSize 方法

作用:获取目录大小

语法:numeric getDirSize($path, $size=0)

参数:

$path 目录

$size 目录大小

示例:

$size = getDirSize('d:/root/ssi')/1024;

echo number_format($size,2).' KB'; //输出24.02KB

delCacheFile 方法

作用:删除缓存目录下的文件或子目录文件,但不会删除默认的index.html文件

语法:bool delCacheFile($dir)

参数:

$dir 目录名或文件名

示例:

 //删除cache/fields目录除index.html外的文件

delCacheFile('fields');

readFileList 方法

作用:获取文件列表(所有子目录文件)

语法:array readFileList($path,&$file_list,$ignore_dir=array())

参数:

$path 目录

$file_list 存放所有子文件的数组

$ignore_dir 需要忽略的目录或文件

ncShop 方法

作用:组成url地址

语法:string urlShop($act,$op,$args,$store_domain)

参数:    $act control文件名

$op op方法名

$args url其它参数

$store_domain 店铺二级域名

subdomain 方法

作用:二级域名解析

语法:int subdomain()

ncReplaceText 方法

作用:通知邮件/通知消息 内容转换函数

语法: string ncReplaceText($message,$param)

参数:    $message 内容模板

$param 内容参数数组

str_cut 方法

作用:字符串切割函数,一个字母算一个位置,一个字算2个位置

语法: str_cut($string, $length, $dot = '')

参数:    $string 待切割的字符串

$length 切割长度

$dot 尾缀

request_uri 方法

作用:重写 $_SERVER['REQUREST_URI'] 方法

get_image_type 方法

作用:获取图片类型

语法:string get_image_type($str)

C 方法

作用:取得系统配置信息

语法: C($key)

参数:    string $key 取得下标值

示例:

C('site_url') 取得 $config['site_url'] 值

C('cache.type') 取得 $config['cache']['type'] 值

defaultGoodsImage 方法

作用:取得商品默认大小图片

语法: defaultGoodsImage($key)

参数:    $key      图片大小 small/tiny

import 方法

作用:加载文件,只适用于加载框架内类库文件,如果文件名中包含"_"使用"#"代替,默认加载libraties目录内的类库

语法: import($libname,$file_ext='.php')

参数:    $libname 要加载的文件

$file_ext 文件扩展名

示例:

import('cache'); 

//相当于 require_once(BasePath.'/framework/libraries/cache.php');

import('libraries.cache');

//相当于 require_once(BasePath.'/framework/libraries/cache.php');

import('function.core');

//相当于 require_once(BasePath.'/framework/function/core.php');

random 方法

作用:取得随机数

语法: random($length, $numeric = 0)

参数:    $length 生成随机数的长度

$numeric 是否只产生数字随机数 1是0否

template 方法

作用:返回模板文件所在完整目录

语法: template($tplpath,$project='')

参数:    $tplpath 模板文件名(不含扩展名)

$project 项目名称

chksubmit 方法

作用:检测FORM表单是否是合法提交

语法: chksubmit()

lazypage 方法

作用:延时加载分页功能,判断是否有更多连接和limitstart值和经过验证修改的$delay_eachnum值

语法:array lazypage($delay_eachnum,$delay_page,

$count,$ispage=false,$page_nowpage=1,$page_eachnum=1,$page_limitstart=1)

参数:    $delay_eachnum 延时分页每页显示的条数

$delay_page 延时分页当前页数

              $count 总记录数

              $ispage 是否在分页模式中实现延时分页(前台显示的两种不同效果)

              $page_nowpage 分页当前页数

              $page_eachnum 分页每页显示条数

              $page_limitstart 分页初始limit值

F 方法

作用:文件数据读取和保存 字符串、数组

语法:F($name, $value='', $path = 'cache',$ext = '.php')

参数:    $name 文件名称(不含扩展名)

$value 待写入文件的内容

$path 写入cache的目录

$ext 文件扩展名write_file 方法

作用:写入文件操作

语法:boolean write_file($filepath, $data, $mode = null)

参数:    $filepath 待写入内容的文件路径

$data 待写入的内容

$mode 写入模式,如果是追加,可传入“append”

mk_dir 方法

作用:循环创建目录

语法:boolean mk_dir($dir, $mode = '0777')

参数:    $dir 待创建的目录

$mode 权限

pagecmd 方法

作用:封装分页操作的函数,方便调用

语法:pagecmd($cmd ='', $arg = '')

参数:    $cmd 命令类型

$arg 参数

 $cmd命令类型允许的值如下:

       seteachnum  设置每页数量

       settotalnum  设置记录总数

       setstyle  设置分页样式

       show  返回分页链接

       obj  返回分页对象本身

       gettotalnum 取得记录总数

       gettotalpage 取得总页数

throw_exception 方法

作用:抛出异常

语法:throw_exception($error)

参数:    $error 异常信息

halt 方法

作用:输出错误信息

语法:halt($error)

参数:    $error 错误信息

compress_code 方法

作用:去除代码中的空白和注释

语法:compress_code($content)

参数:$content 待压缩的内容

H 方法

作用:读/写 缓存方法

语法:H($key, $value='', $cache_type='', $expire=null, $args=null)

参数:    $key 缓存名称

$value 缓存内容

$type     缓存类型,允许值为 file,memcache,xcache,apc,eaccelerator,可以为空,默认为file缓存

$expire 缓存周期

$args 扩展参数

示例:

 H('setting'); // 取得缓存

H('setting',true); // 生成setting缓存并返回缓存结果

H('setting',null); // 清空setting缓存

H('setting',true,'file'); // 生成setting文件缓存

H('setting',true,'memcache'); // 生成setting缓存到memcache

rcache 方法

作用:读取缓存信息(只适用于内存缓存)

语法:rcache($key = null, $prefix = '', $unserialize = true)

参数:    $key 要取得缓存 键

$prefix 键值前缀

$unserialize 是否需要反序列化

wcache 方法

作用:写入缓存(只适用于内存缓存)

语法:boolean wcache($key = null, $data = array(), $prefix = '',  $ttl = 0, $prefix = '', $serialize = true)

参数:    $key 缓存键值

$data 缓存数据

$ttl 缓存周期

$perfix 存入的键值前缀

$serialize 是否序列化后保存

rec 方法

作用:调用推荐位

语法:string rec($rec_id = null)

参数:$rec_id 推荐位ID

L 方法

作用:快速调用语言包

语法:string L($key = '')

参数:$key 语言包对于的键名

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343