产品-dede常见函数参考类.doc

上传人:心*** 文档编号:1039153 上传时间:2018-11-22 格式:DOC 页数:16 大小:357.50KB
下载 相关 举报
产品-dede常见函数参考类.doc_第1页
第1页 / 共16页
产品-dede常见函数参考类.doc_第2页
第2页 / 共16页
产品-dede常见函数参考类.doc_第3页
第3页 / 共16页
产品-dede常见函数参考类.doc_第4页
第4页 / 共16页
产品-dede常见函数参考类.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、 关键字:当前位置:主页 常用函数/类参考 全局函数 全局函数:1、common.func.php 公用函数获得当前的脚本网址function GetCurUrl()返回格林威治标准时间function MyDate($format=Y-m-d H:i:s,$timest=0)把全角数字转为半角function GetAlabNum($fnum)把含 HTML的内容转为纯 textfunction Html2Text($str,$r=0)把文本转 HTMLfunction Text2Html($txt)输出 Ajax头function AjaxHead()中文截取 2,单字节截取模式funct

2、ion cn_substr($str,$slen,$startdd=0)把标准时间转为 Unix时间戳function GetMkTime($dtime)获得一个 0000-00-00 00:00:00 标准格式的时间function GetDateTimeMk($mktime)获得一个 0000-00-00 标准格式的日期function GetDateMk($mktime)获得用户 IPfunction GetIP()获取拼音以 gbk编码为准function GetPinyin($str,$ishead=0,$isclose=1)dedecms通用消息提示框function ShowMs

3、g($msg,$gourl,$onlymsg=0,$limittime=0)保存一个 cookiefunction PutCookie($key,$value,$kptime=0,$pa=“/“)删除一个 cookiefunction DropCookie($key)获取 cookiefunction GetCookie($key)获取验证码function GetCkVdValue()过滤前台用户输入的文本内容/ $rptype = 0 表示仅替换 html 标记/ $rptype = 1 表示替换 html 标记同时去除连续空白字符/ $rptype = 2 表示替换 html 标记同时去

4、除所有空白字符/ $rptype = -1 表示仅替换 html 危险的标记function HtmlReplace($str,$rptype=0)获得某文档的所有 tagfunction GetTags($aid)过滤用于搜索的字符串function FilterSearch($keyword)处理禁用 HTML但允许换行的内容function TrimMsg($msg)获取单篇文档信息function GetOneArchive($aid)本栏相关文档:共 0页/0 条记录 Copyright 2005-2009 DedeCms 本手册内容由 DedeCms官方制作,本站保留内容版权,但允

5、许进行转载 关键字:当前位置:主页 常用函数/类参考 数据库类 数据库类:系统会自动载入 dedesql.class.php 文件,并用$dsql = $db = new DedeSql(false);进行初始化数据库连接,因此在工程所有文件中均不需要单独初始化这个类,可直接用 $dsql 或 $db 进行操作,为了防止错误,操作完后不必关闭数据库。常用的方法:1、执行一个非查询类型的 SQL语句,如 insert 、create 、update 等$rs = $db-ExecuteNoneQuery($sql);返回值为是否执行成功。2、执行一个非查询类型的 SQL语句,并返回成功记录数$r

6、s = $db-ExecuteNoneQuery2($sql);与上面相比,它返回的是影响的记录数,而不是布尔值3、返回单个记录$arr = $db-GetOne($sql);$dsql 如果不带 limit ,系统会自动加上 limit 0,14、执行条件查询语句$db-SetQuery($dsql);$db-Execute();while($arr = $db-GetArray()可以简化为:$db-Execute(me,$dsql);while($arr = $db-GetArray()me 为记录集游标,用于区分不同的查询,如:$db-Execute(me,$dsql);while($

7、arr = $db-GetArray()$db-Execute(2,$dsql2);while($arr2 = $db-GetArray()像这种情况必须指定一个值区分默认的me参数,否则会出错$db-GetArray($rsid,$acctype) 参数$rsid=“me“$acctype=MYSQL_ASSOC在查询游标中读取数据还可以用$db-GetObject($rsid=“me“);返回的结果是用类结构表示的值。5、获取上一个插入的自动递增主键 id值$db-GetLastID();6、获得查询的总记录数$db-GetTotalRow($rsid=“me“)7、获得 MySql的版本

8、号$db-GetVersion($isformat=true)默认的情况下会转换成 x.xx 形式浮点数8、析放某查询的资源$db-FreeResult($rsid=“me“);9、在数据库中是否存在某数据表$db-IsTable($tbname)10、重新选择要操作的数据库$db-SelectDB($dbname);11、获得数据库连接标识$db-linkID获得这个连接标识后,可以直接用 mysql相关函数进行数据库操作在非不得已的情况,项目中一般不使用这个变量。本栏相关文档:共 0页/0 条记录 Copyright 2005-2009 DedeCms 本手册内容由 DedeCms官方制作

9、,本站保留内容版权,但允许进行转载 关键字:当前位置:主页 常用函数/类参考 动态分页类 动态分页类:类文件include/datalistcp.class.php适用范围:数据量不大的数据分页使用方法:$dl = new DataListCP();$dl-pageSize = 25; /设定每页显示记录数(默认 25条)$dl-SetParameter($key,$value); /设定 get字符串的变量/这两句的顺序不能更换$dl-SetTemplate($tplfile); /载入模板$dl-SetSource($sql); /设定查询 SQL$dl-Display(); /显示模板d

10、ede:datalistfield.fieldname1/ - field.fieldname2/ ./dede:datalisttag:pagelist listitem=“info,index,end,pre,next,pageno“ listsize=“5“/listitem、listsize 是可选属性如果需要自定义 datalist 相关属性,可以继续本类来创建一个新类,只需改变 GetArcList($atts,$refObj=,$fields=array() 方法即可。本栏相关文档:共 0页/0 条记录 Copyright 2005-2009 DedeCms 本手册内容由 Ded

11、eCms官方制作,本站保留内容版权,但允许进行转载 关键字:当前位置:主页 常用函数/类参考 静态模板类 静态模板类:类文件include/dedetag.class.php这个文件是 dedecms V5.3及之前版本使用的主要的模板类,它是解析式模板类,并非编译式的(区别是前者通过获得标签位置进行内容替换,后者是直接解析式 PHP代码,二次执行)一、模板语法织梦模板引擎是一种使用 XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用 HTML一样,使模板代码十分直观灵活,新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。

12、1、织梦模板引擎的代码样式有如下几种形式:dede:标记名称 属性=值/dede:标记名称 属性=值/dede:标记名称dede:标记名称 属性=值自定义样式模板(InnerText)/dede:标记名称提示:如果使用带底层模板的标记,必须严格用dede:标记名称 属性=值/dede:标记名称 这种格式,否则会报错。2、织梦模板引擎内置有多个系统标记,这些系统标记在任何场合都是能直接使用的。(1) global 标记,表示获取一个外部变量,除了数据库密码之外,能调用系统的任何配置参数,形式为:dede:global name=变量名称/dede:global或dede:global name=

13、变量名称/其中变量名称不能加 $ 符号,如变量 $cfg_cmspath ,应该写成 dede:global name=cfg_cmspath/ 。(2) foreach 用来输出一个数组,形式为:dede:foreach array=数组名称field:key/ field:value/dede:foreach(3) include 引入一个文件,形式为:dede:include file=文件名称 ismake=是否为 dede板块模板(yes/no)/对文件的搜索路径为顺序为:绝对路径、include 文件夹,CMS 安装目录,CMS主模板目录3、织梦标记允许在任何标记中使用函数对得到的

14、值进行处理,形式为:dede:标记名称 属性=值 function=youfunction(“参数一“,“参数二“,“me“)/其中 me 用于表示当前标记的值,其它参数由你的函数决定是否存在,例如:dede:field name=pubdate function=strftime(“%Y-%m-%d %H:%M:%S“,“me“)/4、织梦标记允许有限的编程扩展。格式为:dede:tagname runphp=yes$aaa = me;me = “123456“;/dede:tagname me 表示这个标记本身的值,因此标记内编程是不能使用 echo之类的语句的,只能把所有返回值传递给me

15、。此外由于程序代码占用了底层模板 InnerText的内容,因此需编程的标记只能使用默认的 InnerText。 二、解析方式在 dedetag.class.php 里面有四个类class DedeAttribute 属性结构表述class DedeAttributeParse 属性解析器class DedeTag 标签结构表述class DedeTagParse 标签解析器使用解析类解析模板时一般经过下面的步骤1、初始化:$dtp = new DedeTagParse();2、载入模板/模板字符串:$dtp-LoadTemplate(模板文件(绝对路径)); /会生成缓存,第二次不需解析模板

16、或$dtp-LoadSource(字符串);3、给标签赋值foreach($dtp-CTags as $tid=$ctag) /判断 ctag的名称和属性,并给赋不同的值,通常用函数处理if($ctag-GetName=mytag) $dtp-Assign($tid, mytagvalue($ctag) );在上面例子中,直接把名称为 mytag 的标签转交给 mytagvalue 函数处理,mytagvalue 里判断$ctag 的各个属性,返回不同内容即可。在 V5.3 版本中,通常除了 field、list 等专用标签之外,凡 arc.*开头的类解析的文件,标签都是对应该 include

17、/taglib 的源码的,这个由系统进行了自动的映射。4、显示或保存为 HTML$dtp-display();或$dtp-SaveTo(静态文件名);对于二次开发人员而言,不大需要知道 dedecms模板具体解析方式,不过应该十分清楚 CTag这个类的结构,从而判断标签不同属性进行处理。class DedeTagvar $IsReplace=FALSE; /标记是否已被替代,供解析器使用var $TagName=“; /标记名称var $InnerText=“; /标记之间的文本var $StartPos=0; /标记起始位置var $EndPos=0; /标记结束位置var $CAttrib

18、ute=“; /标记属性描述,即是 class DedeAttributevar $TagValue=“; /标记的值var $TagID = 0;/获取标记的名称和值function GetName()return strtolower($this-TagName);function GetValue()return $this-TagValue;/下面两个成员函数仅是为了兼容旧版function GetTagName()return strtolower($this-TagName);function GetTagValue()return $this-TagValue;/获取标记的指定属性function IsAttribute($str)return $this-CAttribute-IsAttribute($str);function GetAttribute($str)return $this-CAttribute-GetAtt($str);function GetAtt($str)return $this-CAttribute-GetAtt($str);function GetInnerText()return $this-InnerText;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。