改进代码后虽可解决大多数函数参数的问题,但也同样产生了参数问题:ecshop模板函数参数有部分没有被引号包裹,所以正则并不能匹配到,要修改为引号包裹,那是个大工程。

为了使ecshop模板支持date,最终解决方法是,取消使用改进代码,date变量标签修改为:

case 'date':
unset($s[0]);
$str=implode(':',$s);
$p="date({$str},".$p.')';
break;

改变不了别人,就改变自己...

<================================历史分割线============================>

今天使用ecshop模板格式化时间,{$time|date:'Y-m-d H:i:s'}

却一直没有显示出效果,查一下代码,发现处理变量标签的代码非常简单粗暴,只有一行

位置:includes/cls_template.php 大概590行:

$s = explode(':', $mod);

直接把时间格式给切掉几份了。

于是在其下添加两行代码改进:

$s = explode(':', $mod);

#添加下面两行
preg_match_all('|([\'\"][^\'\"]+[\'\"])|',$mod,$match);
$s=array_merge([$s[0]],$match[1]);

问题解决!

附:使ecshop支持date标签

在switch内添加:

case 'date':
$p="date({$s[1]},".$p.')';
break;

OK!

【Ecshop】v2.7.3模板变量标签改进的更多相关文章

  1. 04_Django-模板变量/标签/过滤器/继承-url反向解析

    04_Django-模板变量/标签/过滤器/继承-url反向解析 视频:https://www.bilibili.com/video/BV1vK4y1o7jH 博客:https://blog.csdn ...

  2. django中模板变量与内置标签以及过滤器

    本文参考 官方文档 . 一  模板变量 格式: {{ variable_name }} variable_name   命名规则与变量命名规则类似,允许字符数字下划线,不允许标点. variable_ ...

  3. ECSHOP在线手册之模板结构说明 (适用版本v2.7.3)

    名称 类型 备注(作用或意义) 文件(目录)名可否更改 images 目录 存放模板图片目录 不可更改 library 目录 存放模板库文件目录 不可更改 screenshot.png 图片 用于“后 ...

  4. ECSHOP v2.5数据库字典

    ECSHOP v2.5 数据库字典 ECSHOP R&D Team 2007年4月16日 商品相关表 商品分类表 category 此表用来维护商品分类信息 字段名 字段描述 字段类型 默认值 ...

  5. Django 模板语言 标签

    前言:django的模板语法基本和flask的jinja2基本一样.下面比较一下两个模板语法的区别. ------深度变量的查找(万能的句点号) 在 Django 模板中遍历复杂数据结构的关键是句点字 ...

  6. Django模板语言 标签整理

    Django模板语言 标签 内置标签引用 1. autoescape 控制自动转义是否可用. 这种标签带有任何 on 或 off 作为参数的话,他将决定转义块内效果. 该标签会以一个endautoes ...

  7. Django 学习笔记(四)模板变量

    关于Django模板变量官方网址:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.传入普通变量 在hello/Hell ...

  8. ThinkPHP模板IF标签用法详解

    投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-07-01 我要评论 这篇文章主要介绍了ThinkPHP模板IF标签用法,需要的朋友可以参考下 ThinkPHP的IF标 ...

  9. Django 学习第三天——模板变量及模板过滤器

    一.模板路径的查找: 查找顺序:(现在哪找到就用那个) 首先在主目录的 setting.py 文件里的 TEMPLATES 中的 DIRS 里找: 其次如果 DIRS 中的 APP_DIRS : 'T ...

随机推荐

  1. Linux中vim编辑器常用操作技巧

    Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...

  2. Maven的学习资料收集--(一)环境搭建

    这几天在做项目的时候用到了maven,但是自己没有从来没有接触过,所以咋网上找资料,终于找到了一下的资料,这个是别人总结的,我只是转载过来积累.请尊重原创. 官网地址:http://maven.apa ...

  3. java递归展示树形图代码实现以及遇到的问题

    我最近写到了一个项目中用到了树形图,不得不说这个树形图是真的扯淡: 我用到的是layui中的树形图,再展示数据过程中遇到了很多的问题,废话不多说,直接贴代码. 一.调用排序接口,对数据进行排序. 二. ...

  4. Laravel项目的结构文章

    http://esbenp.github.io/2016/04/11/modern-rest-api-laravel-part-1/

  5. 【Python】python2 str 编码检测

    python2 str 编码检测 import chardet s = 'sdffdfd' print type(s) print chardet.detect(s) s2 = '反反复复' prin ...

  6. Linux 下查找指令

    原文链接:http://www.cnblogs.com/sunleecn/archive/2011/11/01/2232210.html whereis <程序名称>查找软件的安装路径-b ...

  7. sublimetext3安装配置

    官网:http://www.sublimetext.com/ 中文官网:http://www.sublimetextcn.com/ 包管理器:https://packagecontrol.io/ins ...

  8. MySQL使用一张表的一列更新另一张表的一列

    使用MySQL中,在一张表etl_table_field_info上新增了一个字段tgt_table_en_name,该字段的值想从表etl_table_property_info的tgt_table ...

  9. LEMP (LNMP) Stack-5.4.16 (OpenLogic CentOS 7.2)

    LEMP (LNMP) Stack-5.4.16 (OpenLogic CentOS 7.2) 平台: CentOS 类型: 虚拟机镜像 软件包: mariadb-5.5.47 nginx-1.6.3 ...

  10. ASP.NET中登陆验证码的生成和输入验证码的验证

    一:验证码的生成实现代码 protected void Page_Load(object sender, EventArgs e)    {        string validateCode = ...