<?php
/**
* 易优CMS
* ============================================================================
* 版权所有 2016-2028 海南赞赞网络科技有限公司,并保留所有权利。
* 网站地址: http://www.eyoucms.com
* ----------------------------------------------------------------------------
* 如果商业用途务必到官方购买正版授权, 以免引起不必要的法律纠纷.
* ============================================================================
* Author: 小虎哥 <1105415366@qq.com>
* Date: 2018-4-3
*/
namespace think\template\taglib;
use think\template\TagLib;
/**
* eyou标签库解析类
* @category Think
* @package Think
* @subpackage Driver.Taglib
* @author 小虎哥 <1105415366@qq.com>
*/
class Eyou extends Taglib
{
// 标签定义
protected $tags = [
// 标签定义: attr 属性列表 close 是否闭合(0 或者1 默认1) alias 标签别名 level 嵌套层次
'php' => ['attr' => ''],
'channel' => ['attr' => 'typeid,notypeid,reid,type,row,currentstyle,id,name,key,empty,mod,titlelen,offset,limit'],
'channelartlist' => ['attr' => 'typeid,type,row,id,key,empty,titlelen,mod'],
'arclist' => ['attr' => 'channelid,typeid,notypeid,row,offset,titlelen,limit,orderby,orderway,noflag,flag,infolen,empty,mod,name,id,key,addfields,tagid,pagesize,thumb,joinaid'],
'arcpagelist'=> ['attr' => 'tagid,pagesize,id,tips,loading,callback'],
'list' => ['attr' => 'channelid,typeid,notypeid,pagesize,titlelen,orderby,orderway,noflag,flag,infolen,empty,mod,id,key,addfields,thumb'],
'pagelist' => ['attr' => 'listitem,listsize', 'close' => 0],
'position' => ['attr' => 'symbol,style', 'close' => 0],
'type' => ['attr' => 'typeid,type,empty,dirname,id,addfields,addtable'],
'arcview' => ['attr' => 'aid,empty,id,addfields,joinaid'],
'arcclick' => ['attr' => '', 'close' => 0],
'load' => ['attr' => 'file,href,type,value,basepath', 'close' => 0, 'alias' => ['import,css,js', 'type']],
'guestbookform'=> ['attr' => 'typeid,type,empty,id,mod,key'],
'assign' => ['attr' => 'name,value', 'close' => 0],
'empty' => ['attr' => 'name'],
'notempty' => ['attr' => 'name'],
'foreach' => ['attr' => 'name,id,item,key,offset,length,mod', 'expression' => true],
'volist' => ['attr' => 'name,id,offset,length,key,mod,limit,row', 'alias' => 'iterate'],
'if' => ['attr' => 'condition', 'expression' => true],
'elseif' => ['attr' => 'condition', 'close' => 0, 'expression' => true],
'else' => ['attr' => '', 'close' => 0],
'switch' => ['attr' => 'name', 'expression' => true],
'case' => ['attr' => 'value,break', 'expression' => true],
'default' => ['attr' => '', 'close' => 0],
'compare' => ['attr' => 'name,value,type', 'alias' => ['eq,equal,notequal,neq,gt,lt,egt,elt,heq,nheq', 'type']],
'ad' => ['attr' => 'aid,id', 'close'=>1],
'adv' => ['attr' => 'pid,row,order,where,id,empty,key,mod,currentstyle', 'close'=>1],
'global' => ['attr' => 'name', 'close' => 0],
'static' => ['attr' => 'file,lang,href,code', 'close' => 0],
'prenext' => ['attr' => 'get,titlelen,id,empty'],
'field' => ['attr' => 'name,addfields,aid', 'close' => 0],
'searchurl' => ['attr' => '', 'close' => 0],
'searchform' => ['attr' => 'channel,typeid,notypeid,flag,noflag,type,empty,id,mod,key', 'close'=>1],
'tag' => ['attr' => 'aid,name,row,id,key,mod,typeid,getall,sort,empty,style,type'],
'flink' => ['attr' => 'type,row,id,key,mod,titlelen,empty,limit'],
'language' => ['attr' => 'type,row,id,key,mod,titlelen,empty,limit,currentstyle'],
'lang' => ['attr' => 'name,const', 'close' => 0],
'ui' => ['attr' => 'open', 'close' => 0],
'uitext' => ['attr' => 'e-id,e-page,id'],
'uihtml' => ['attr' => 'e-id,e-page,id'],
'uiupload' => ['attr' => 'e-id,e-page,id'],
'uitype' => ['attr' => 'e-id,e-page,id,typeid'],
'uiarclist' => ['attr' => 'e-id,e-page,id,typeid'],
'uichannel' => ['attr' => 'e-id,e-page,id,typeid'],
// 'sql' => ['attr' => 'sql,key,id,mod,cachetime,empty', 'close'=>1, 'level'=>3], // eyou sql 万能标签
'weapp' => ['attr' => 'type', 'close' => 0], // 网站应用插件
'range' => ['attr' => 'name,value,type', 'alias' => ['in,notin,between,notbetween', 'type']],
'present' => ['attr' => 'name'],
'notpresent' => ['attr' => 'name'],
'defined' => ['attr' => 'name'],
'notdefined' => ['attr' => 'name'],
'define' => ['attr' => 'name,value', 'close' => 0],
'for' => ['attr' => 'start,end,name,comparison,step'],
'url' => ['attr' => 'link,vars,suffix,domain', 'close' => 0, 'expression' => true],
'function' => ['attr' => 'name,vars,use,call'],
'diyfield' => ['attr' => 'name,id,key,mod,type,empty,limit'],
'attribute' => ['attr' => 'aid,type,empty,id,mod,key'],
'attr' => ['attr' => 'aid,name', 'close' => 0],
'user' => ['attr' => 'type,id,key,mod,empty,currentstyle,img,txt,txtid'],
'weapplist' => ['attr' => 'type,id,key,mod,empty,currentstyle'], // 网站应用插件列表
'usermenu' => ['attr' => 'row,id,empty,key,mod,currentstyle,limit'],
// 购物行为标签
'sppurchase' => ['attr' => 'row,id,key,mod,empty,currentstyle'],
// 购物车大标签
'spcart' => ['attr' => 'row,id,key,mod,empty,limit'],
// 订单明细大标签
'sporder' => ['attr' => 'row,id,key,mod,empty,limit'],
// 订单提交大标签
'spsubmitorder'=> ['attr' => 'row,id,key,mod,empty,limit'],
// 订单管理页大标签
'sporderlist'=> ['attr' => 'row,id,key,mod,empty,limit,pagesize'],
// 地址标签
'spaddress' => ['attr' => 'type,row,id,key,mod,empty,limit'],
// 订单产品标签
'spordergoods'=> ['attr' => 'row,id,key,mod,empty,limit,name,titlelen'],
// 订单状态标签
'spstatus' => ['attr' => 'row,id,key,mod,empty,limit'],
// 订单管理页,分页标签
'sppageorder' => ['attr' => 'listitem,listsize', 'close' => 0],
// 订单管理页搜索标签
'spsearch' => ['attr' => 'empty,id,mod,key'],
// 筛选搜索
'screening' => ['attr' => 'empty,id,mod,key,currentstyle,addfields,addfieldids,alltxt,typeid'],
];
/**
* 自动识别构建变量,传值可以使变量也可以是值
* @access private
* @param string $value 值或变量
* @return string
*/
private function varOrvalue($value)
{
$flag = substr($value, 0, 1);
if ('$' == $flag || ':' == $flag) {
$value = $this->autoBuildVar($value);
} else {
$value = str_replace('"', '\"', $value);
$value = '"' . $value . '"';
}
return $value;
}
/**
* 万能的SQL标签
*/
public function tagSql($tag, $content)
{
$sql = $tag['sql']; // sql 语句
$sql = $this->varOrvalue($sql);
$key = !empty($tag['key']) ? $tag['key'] : 'i';
$mod = isset($tag['mod']) ? $tag['mod'] : '2';
$id = !empty($tag['id']) ? $tag['id'] : 'field';// 返回的变量
$cachetime = !empty($tag['cachetime']) ? $tag['cachetime'] : '';// 缓存时间
$empty = isset($tag['empty']) ? $tag['empty'] : '';

百创科技
- 粉丝: 2230
- 资源: 264
最新资源
- (源码)基于Arduino的VIP车辆停车管理系统.zip
- (源码)基于物联网边缘计算和MQTT协议的Modbus设备控制器.zip
- (源码)基于Arduino的Midi多音轨通道分离器.zip
- (源码)基于Vue 3框架的MiniVue学习项目.zip
- (源码)基于Arduino框架的IdIoT智能USB集线器.zip
- (源码)基于ESP32的Mecanum轮式机器人控制系统.zip
- (源码)基于MyBatis Generator的代码生成工具.zip
- (源码)基于以太坊和IPFS的博客系统.zip
- (源码)基于PHP和MySQL的失物招领系统.zip
- (源码)基于AVR微控制器的USB设备与LCD交互系统.zip
- (源码)基于[未提及,假设为常见后端语言如Python]的在线编程教学系统.zip
- (源码)基于自我清洁技术的智能洗手间隔间系统.zip
- (源码)基于Ruby的Jekyll主题与调试插件.zip
- (源码)基于C++硬件控制库.zip
- (源码)基于Django和Vue的软考在线考试系统.zip
- (源码)基于STM32微控制器的PET 3D打印丝材制造机控制系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


