php taglib,thinkphp中 taglib标签应用

php taglib,thinkphp中 taglib标签应用1 配置文件中加上 APP AUTOLOAD PATH gt TagLib 2 在项目的 Lib 下新建 TagLib 文件夹复制 TagLibHtml class php 到该目录下面也可以自己定义格式 Tag 大驼峰命名 class php 实例 TagLibCms class php 代码下面 3 模版或 hhhTagLibCms class php 的代码 code

1、配置文件中加上:

‘APP_AUTOLOAD_PATH’         =>  ‘@.TagLib’,

2、在项目的/Lib/下新建 TagLib文件夹 复制TagLibHtml.class.php到该目录下面

也可以自己定义格式Tag大驼峰命名.class.php

实例:TagLibCms.class.php代码下面;

3、模版

hhh

TagLibCms.class.php的代码:

[code]

import(“TagLib”);

class TagLibCms extends TagLib{

private   $CategoryArr = array();

private   $SubString = ”;

protected $tags = array(

‘article’=>array(‘attr’=>’name,field,limit,order,cid,where,sql,key,mod’,’level’=>3),

);

public function _article($attr,$content){

$tag = $this->parseXmlAttr($attr,’article’);

$result = !empty($tag[‘result’])?$tag[‘result’]:’article’; //定义数据查询的结果存放变量

$key = !empty($tag[‘key’])?$tag[‘key’]:’i’;

$mod = isset($tag[‘mod’])?$tag[‘mod’]:’2′;

//print_r($tag[‘name’]);die();

if ($tag[‘name’]){

$sql = “M(‘{$tag[‘name’]}’)->”;

$sql .= ($tag[‘field’])?”field({$tag[‘field’]})->”:”;

$sql .= ($tag[‘order’])?”order({$tag[‘order’]})->”:”;

if($tag[‘cid’]){

$cidarr = explode(‘,’,$tag[‘cid’]);

foreach($cidarr AS $k=>$v){

$this->getSubCategory($v);

}

$cidstr = implode(“,”,$this->SubString);

$tag[‘where’] = “cid IN(“.$cidstr.”)”;

$sql .= ($tag[‘where’])?”where(\”{$tag[‘where’]}\”)->”:”;

}else{

$sql .= ($tag[‘where’])?”where(\”{$tag[‘where’]}\”)->”:”;   //被重新处理过了

}

$sql .= “select()”;

echo $sql;die();

}

//下面拼接输出语句

$parsestr = ‘<?php $_result=’.$sql.’; if ($_result): $’.$key.’=0;’;

$parsestr .= ‘foreach($_result as $key=>$’.$result.’):’;

$parsestr .= ‘++$’.$key.’;$mod = ($’.$key.’ % ‘.$mod.’ );?>’;

$parsestr .= $content;//解析在article标签中的内容

$parsestr .= ‘<?php endforeach; endif;?>’;

return $parsestr;

}

}

[/code]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233443.html原文链接:https://javaforall.net

(0)
上一篇 2025年7月18日 上午11:01
下一篇 2025年7月18日 上午11:22


相关推荐

  • pycharm正则替换小技巧

    pycharm正则替换小技巧在 django 开发过程中 可能遇到需要把 HTML 文件中的静态文件的路径全部替换为 django 模板引用路径的格式例如将 lt linkrel stylesheet type text css href static css reset css gt 中的 static css reset css 替换为 static css reset css 可以用到 pycharm 的

    2026年1月22日
    2
  • Java开发手册之其它规范[通俗易懂]

    Java开发手册之其它规范[通俗易懂]Java开发手册之其它规范

    2022年4月22日
    46
  • iOS App 签名的原理

    iOS App 签名的原理感谢作者 bang 的授权发布 版权归原作者所有 未经允许 请勿转载 原文地址 http blog cnbang net tech 3386 作者 陈振焯 网名 bang iOS 开发者 推特中文圈 JSPatch 作者 CSDN 有奖征稿啦 技术之路 共同进步 有优质移动开发 VR AR MR 物联网原创技术文章欢迎发送邮件至 mobilehub csdn

    2026年3月18日
    2
  • pki ca与数字证书技术大全_内部控制体系种类

    pki ca与数字证书技术大全_内部控制体系种类文章目录一、什么是PKIPKI基本组件数字证书分类二、参考一、什么是PKIPKI是PublicKeyInfrastructure的缩写,中文叫做公开密钥基础设施,也就是利用公开密钥机制建立起来的基础设施。PKI是PublicKeyInfrastructure的缩写,其主要功能是绑定证书持有者的身份和相关的密钥对(通过为公钥及相关的用户身份信息签发数字证书),为用户提供方便的证书申请、证书作废、证书获取、证书状态查询的途径,并利用数字证书及相关的各种服务(证书发布,黑名单发布,时间

    2022年8月22日
    12
  • Git篇

    Git篇

    2021年10月19日
    41
  • 编程是程序设计吗_做软件必须先设计再编程吗

    编程是程序设计吗_做软件必须先设计再编程吗常在电脑前工作,总有那么几天会对未来迷茫,可能是每天静止的坐着,感觉自己在变老,而电脑总想个孩子,每天能冒出无数个想法,让你去琢磨它,跟上它的节奏,真有点TheBigBangTheory的味儿,

    2022年8月6日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号