phpcms公用库函数原型
(一)./include/global.php 中的函数可在phpcms的任何一个程序中调用,下面是各函数的原型及用法。
message($alert,$goback='') --  显示js消息对话框形式的提示信息
无返回值,$alert为提示信息内容,$goback参数是用户确认后跳转的url地址(此参数可选,默认为空即不进行跳转,如果该参数的值为“goback”,则用户确认后浏览器自动跳转到前一个打开的地址,如果该参数的值为“close”,则用户确认后浏览器自动关闭当前窗口。
createdir($dir='') --  创建目录
无返回值,$dir参数必须是一个目录地址,默认为空不创建目录。目录地址可以是多层次的目录,该函数会逐层目录地检查该目录是否创建,如果已经创建则继续检查下级目录,如果没有创建则自动创建目录。目录属性默认为 0777
file_write($filename,$content) --  创建一个文件并写入内容
无返回值,$filename为要创建的文件名,$content为要写入该文件的内容。
dhtmlspecialchars($string) --  把特殊字符转换为html实体
返回字符串或者数组,$string参数可以是一个字符串,也可以是一个数组。
daddslashes($string) -- 使用反斜线引用字符串
返回字符串或者数组,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线()与 nul(null 字符)。
random($length,$chars='0123456789') -- 生成随机字符串
返回字符串,$length为返回的字符串长度,$chars为字符串的组成字符,默认为数字即'0123456789'。
language($file,$language) -- 获取语言包文件的路径
返回字符串,$file为文件名(不带后缀.php),$language为语言包目录(比如“chinese-gb2312”)。
template($file,$admin=0) -- 获取模板文件路径
返回字符串,$file为文件名(不带后缀.htm),$admin参数为可选值,默认值为0,即表示调用前台模板文件,如果$admin=1,则表示调用后台模板文件。
html($file) -- 调用 ./include/html/ 目录下的文件并执行
无返回值,$file参数为不带后缀.php的文件名,该文件应该是存在于 ./include/html/ 目录下的,调用此函数后该文件将被执行,通常情况下次函数用在生成html的程序中
articlepage($pagenumber=1,$page=0,$path='') -- 一篇文章分页
返回字符串,$pagenumber为文章总页数默认为1,$page为当前页数默认为0,$path为文章路径。此函数返回一篇文章的分页连接。
showpage($totle,$perpage=30,$page=1,$url='?') -- 文章分页
返回字符串,$totle 为总记录数,$perpage为每页显示的记录条数(默认为30),$page为当前页码(默认为1),$url为分页链接的基准地址(默认为“?”),此函数将返回文章分页的链接。
wordscut($string, $length ,$sss=0) -- 字符串截断
返回字符串,$string为需要截断的字符串,$length为截断后的最大长度,$sss为设置是否显示“...”的开关,当值为1时显示“...”,默认为不显示。
str_out($string) -- 处理要输出的字符串
返回字符串或者数组,$string为要处理的字符串或者数组,该函数会还原经addslashes处理过的字符串,把html实体化,把textarea中的换行变成“<br>”,把空格变成“&nbsp;”。
str_in($string) -- 处理插入到数据库的字符串
返回字符串或者数组,$string为要处理的字符串或者数组,该函数会对目标字符串或者数组进行addslashes处理。
chartype($pattern,$string) -- 对字符串或者数组进行正则检查
返回字符串或者数组,$string为要处理的字符串或者数组,$pattern为perl格式的正则表达式,值得一提的是该函数可对数组进行正则检查。
file_ext($name,$exts) -- 检查文件扩展名
返回文件扩展名或者false,$name参数为要检查的文件名,$exts为需要判断的文件名后缀,多个后缀用“|”隔开,如果$name的后缀是$exts中的一个则函数返回该后缀名,如果不是则返回false。此函数一般用在对上传文件后缀判断中。
menu($parentid=0) -- 获取子栏目信息
返回一个数组,$parentid为子栏目的上级栏目的catid,如果$menu=menu($parentid=0),那么$menu[url]为栏目链接地址,$menu[catname]为栏目名称,$menu[description]为栏目描述,$menu[target]为栏目打开的目标窗口。
(二)./admin/global.php 中的函数可在phpcms后台的任何一个程序中调用,下面是各函数的原型及用法。
showmessage($msg, $url_forward = '', $msgtype = 'message') -- 显示提示信息
无返回值,$msg为提示信息内容,$url_forward 为跳转的url地址,$msgtype 为显示形式,有“message”和“form”可供选择
dir_writeable($dir) -- 判断目录是否可写
返回true或者false,$dir为要检查的目录
copydir($source,$destination,$child=1) -- 拷贝目录
无返回值,$source为要拷贝的源目录路径,$destination为目标目录路径,当$child为1时此函数将自动拷贝$source目录下所有子目录和文件至$destination目录(如果$destination目录不存在则自动创建),当$child为0时此函数将自动拷贝$source目录下所有文件至$destination目录(如果$destination目录不存在则自动创建)。
deletedir($dirname) -- 删除目录
无返回值,自动删除$dirname目录下所有的子目录和文件
sizecount($filesize) -- 空间大小换算
返回浮点型数字,自动把$filesize从bytes单位换算成k、m、g的单位
listpages($totle,$perpage=30,$page=1,$path='') -- 文章分页
listpages($totle,$perpage=30,$page=1,$path='')类似于showpage($totle,$perpage=30,$page=1,$url='?'),但是showpage($totle,$perpage=30,$page=1,$url='?')适用于htm网页分页,而listpages($totle,$perpage=30,$page=1,$path='')则适用于php网页分页
checkadmin($msg,$referer='') -- 权限检查
无返回值,$msg为提示信息内容,$referer为跳转url。此函数自动检查当前用户是否为管理员以及是否具有当前操作权限,如果没有则显示$msg信息并跳转至$referer

phpcms插件开发初步规范的更多相关文章

  1. vim插件开发初步

    [vim插件开发初步] 将如下代码存在helloworld.vim, 放在~/.vim/plugin目录下,插件即可生效.:w保存代码后, 用:source命令执行后,也可以使用Helloworld命 ...

  2. PHPCMS 插件开发教程及经验谈

    虽说 PHPCMS 开源,但其它开发文档及参考资料实在少得可怜.进行二次开发时,自己还得慢慢去研究它的代码,实在让人郁闷. PHPCMS 的“Baibu/Google地图”实在有待改进,对于数据量比较 ...

  3. 《前端之路》之 Babel 下一代 JavaScript 语法编译器

    写本章的内容的出发点主要是 为了对于之前关于 JS 版本的一个总结,在之前的开发中,我们始终对于 ECMAScript 的版本的更新不够重视,以至于在后面的 开发过程中,我们始终会被各种新奇的语法打断 ...

  4. babel 7 简单升级指南

    babel 7 babel 7 发布两天了,试着对当前项目更新了下,仅此记录分享 主要改动参考 官方博客 官方升级指南 主要升级内容 不再支持放弃维护的 node 版本 0.10.0.12.4.5 使 ...

  5. FakeID签名漏洞分析及利用(一)

    作者:申迪   转载请注明出处: http://blogs.360.cn/360mobile BlueBox于7月30日宣布安卓从2010年以来一直存在一个apk签名问题[1],并且会在今年Black ...

  6. 个人学期总结及Python+Flask+MysqL的web建设技术过程

    一个学期即将过去,我们也迎来了2018年.这个学期,首次接触了web网站开发建设,不仅是这门课程,还有另外一门用idea的gradle框架来制作网页. 很显然,用python语言的flask框架更加简 ...

  7. dom 兼容性问题 2 offset

        offsetParent : 离当前节点最近的具有定位属性的祖先节点. 如果所有祖先节点都没有定位属性: 对于一个有定位属性的元素: ie6.7 : offsetParent 是 html 节 ...

  8. babel速览

    babel babel初衷 在es6出现之后,由于此版本的巨大改变,给人们带来了很多革命性的技术支持,但是当时很多浏览器对es6支持有限,babel就是为了达到写最新的语法,可以在任意浏览器运行而出现 ...

  9. jquery插件开发规范

    一.请给你的代码加上注释 这个世界不存在百分百的完美的jquery插件,注释不止是给别人看.更重要的是给自己看. 你应该把注释当做你代码的一部分,养成随手加注释的习惯,尤其是编写javascript的 ...

随机推荐

  1. TRAFFIC LIGHTS POJ 1158

    题目大意: 在Dingilville 城市安排是一种不同寻常的方式,每个交叉路口有一条道路连接,一条道路最多连接两个不同的交叉路口.每个交叉路口不能连接他自己.道路旅行一端到另一端的时间是相同的,任何 ...

  2. 解读sample3

    说明 理解被测试代码 理解测试代码:test fixture简介 编写fixture class TEST_F宏 其他 不应该被忽略的注释 说明 被测试代码文件 sample3-inl.h 测试代码文 ...

  3. HDU5409---CRB and Graph 2015多校 双联通分量缩点

    题意:一个联通的无向图, 对于每一条边, 若删除该边后存在两点不可达,则输出这两个点, 如果存在多个则输出第一个点尽可能大,第二个点尽可能小的. 不存在输出0 0 首先 若删除某一条边后存在多个联通分 ...

  4. 微设计(www.weidesigner.com)介绍系列文章(二)

    微设计(www.weidesigner.com)是一个专门针对微信公众账号提供营销推广服务而打造的第三方平台. 2.1 怎样注冊微信公众号? 登录mp.weixin.qq.com,点击注冊填写相关信息 ...

  5. 微信公众平台java开发具体解释(project代码+解析)

    说明: 本次的教程主要是对微信公众平台开发人员模式的解说,网络上非常多类似文章,但非常多都让初学微信开发的人一头雾水,所以总结自己的微信开发经验,将微信开发的整个过程系统的列出,并对主要代码进行解说分 ...

  6. [AngularJS] Exploring the Angular 1.5 .component() method

    Angualr 1.4: .directive('counter', function counter() { return { scope: {}, restrict: 'EA', transclu ...

  7. honeywell D6110开发的一个工厂仓库追溯识别

    近日.接触并开发了一个用honeywell D6110 二维扫描PDA的项目,应用也比較简单. 就是货品物料编码.通过中间码相应,然后中间码再依照不同OEM品牌须要生成各种商品条码并带有流水号. 要求 ...

  8. Arduino 数码管LED屏驱动

    今天測试数码管LED屏驱动,用某产品的一个共阴极的LED屏,依据电路图做数码管LED屏的检測. 代码写得有些冗长,有好几种驱动的方法,这里仅仅是当中一种最直接的方案,抽出时间要做个更有效率的调用和驱动 ...

  9. python安装MySQLdb(Windows环境)

    1.下载 http://www.codegood.com/downloads 我的win7 64位.Python2.7.8版本,所以选择MySQL-python-1.2.3.win-amd64-py2 ...

  10. sass笔记-2|Sass基础语法之让样式表更具条理性和可读性

    这一篇主要详述保持sass条理性和可读性的3个最基本方法--嵌套.导入和注释. 零. 变量 变量本身的作用是为了保持属性值的可维护性,把所有需要维护的属性值放在同一个地方,快速更改,处处生效,可谓售后 ...