thinkphp 前台html调用函数 格式化输出

thinkphp5.0无限极分类及格式化输出详解案例一则 接下来的步骤就差不多了,首先foreach循环天安门的子节点,发现没有子节点,递归结束,同时将sort($data,7,3)出栈,回到递归进入出,以上为例,则回到天安门那段代码的sort处,同时执行foreach循环,查找是否有其他的节点的pid为6,即查看北京下是否还有其他子节点。此刻我们来观察数组,可以看出,通过递归,数组里的数据开始变得有序起来,如贵州是中国的一级子节点,所以紧跟在中国之后,当第一轮递归结束,到了第二轮递归时,第一个找到的是北京,所以数组里面第三个元素是北京。 阅读详情

仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用。用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和smarty不同,用于模板的函数不需要特别的定义。

模板变量的函数调用格式为:


XML/HTML代码


{$varname|function1|function2=arg1,arg2,### }  


说明:

{ 和 $ 符号之间不能有空格 ,后面参数的空格就没有问题

###表示模板变量本身的参数位置

支持多个函数,函数之间支持空格

支持函数屏蔽功能,在配置文件中可以配置禁止使用的函数列表

支持变量缓存功能,重复变量字串不多次解析

使用例子:


XML/HTML代码


{$webTitle|md5|strtoupper|substr=0,3} 


编译后的PHP代码就是:


PHP代码


<?php echo (substr(strtoupper(md5($webTitle)),0,3)); ?> 

 


注意函数的定义和使用顺序的对应关系,通常来说函数的第一个参数就是前面的变量或者前一个函数使用的结果,如果你的变量并不是函数的第一个参数,需要使用定位符号,例如:


XML/HTML代码


{$create_time|date="y-m-d",###} 


编译后的PHP是:


PHP代码


<?php echo (date("y-m-d",$create_time)); ?> 


函数的使用没有个数限制,但是可以允许配置TMPL_DENY_FUNC_LIST定义禁用函数列表,系统默认禁用了exit和echo函数,以防止破坏模板输出,我们也可以增加额外的定义,例如:

TMPL_DENY_FUNC_LIST=>"echo,exit,halt"

多个函数之间使用半角逗号分隔即可。

并且还提供了在模板文件中直接调用函数的快捷方法,无需通过模板变量,包括两种方式:

1、执行方法并输出返回值:

格式:{:function(…)}

例如,输出U方法的返回值:


XML/HTML代码


{:U('User/insert')} 

编译后的PHP代码是


PHP代码


<?php echo U('User/insert');?> 

 


2、执行方法但不输出:

格式:{~function(…)}

例如,调用say_hello函数:


XML/HTML代码


{~say_hello('ThinkPHP')} 


编译后的PHP代码是:


PHP代码


<?php say_hello('ThinkPHP');?> 

 
比如我自定义函数是这样
function Category($cid)
{
 
$Category=D("Category");
 
$Category=$Category->where('id='.$cid)->find();
 
return $Category['title'];
 
}
我想在模板中调用这个函数则在模板中可以这样写
{$vo.cid|category=###}
当然自定义函数要放在项目目录/Common/common.php中

 

 
实际项目中,我们经常需要标签变量加减运算的操作。但是,在ThinkPHP中,并不支持模板变量直接运算的操作。
幸运的是,它提供了自定义函数的方法,我们可以利用自定义函数解决:
ThinkPHP模板自定义函数语法如下:
格式:{:function(…)} (参考官方帮助文档:http://thinkphp.cn/Manual/196)
利用这个,我们来试做加法和减法。

在ThinkPHP中定义函数。在项目的common文件夹下新建common.php文件(这样系统会自动加载)。定义两个函数:

function 

template_add($a,$b){

    echo(intval($a)+intval($b));

}

function

template_substract($a,$b){

    echo(intval($a)-intval($b));

}
在模板中使用函数:
{:template_add($var1,$var2)}
即可显出变量var1于var2的和。

把自定义的函数放在Common目录下common.php里面如果调用不出来,把文件名改成common.class.php,定义import(@.common.common)

05 SAP CPI 访问第一个CPI接口 其中的clientid的值可作为Basic验证的用户名,clientsecret的值可作为Basic验证的密码。点击SEND按钮,可看见返回状态为200 OK。在04中,我们得到TOKEN令牌。POSTMAN向下滚动。点击按钮获取token。 阅读详情

相关推荐

Rockchip平台之RK3566/3568 OS02N10

文章摘要 本文主要介绍了200W摄像头传感器OS02N10在RK3566平台上的兼容与适配过程。作者基于之前的400W摄像头兼容经验,针对200W摄像头进行了类似的适配工作。文章详细阐述了RK3566芯片的特性和OS02N10传感器的技术参数,包括分辨率、接口和功耗等。适配过程分为三个关键部分:DTS设备树文件配置(定义I2C地址、电源域和GPIO控制等)、驱动文件开发(寄存器初始化和操作)以及XML和JSON配置文件调整(图像参数设置)。作者特别强调了初始化数组中空寄存器终止条件的重要性,并分享了兼容过程

different_xzh的博客 2412

Thinkphp5.1版本 H5分页中url中出现&amp这样的字符,删除&amp字样

var url = urlData[0]+'page='+page; var parseResult = new DOMParser().parseFromString(url, "text/html"); var parsedUrl = parseResult.documentElement.textContent; window.location.href = parsedUrl; 亲测有效

Rerise的博客 1421

RPA实战:手把手教你打造抖音自动养号机器人(含避坑指南)

本文详细介绍了如何利用RPA技术从零构建一个智能化的抖音自动养号机器人。内容涵盖环境准备、核心工具选型、拟人化行为流程设计、代码实现模块拆解,并提供了关键的避坑指南与风控对抗策略,帮助开发者高效、稳定地实现账号自动化运营。

orange的博客 561

thinkphp 前台html调用函数 格式化输出

仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用。用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和smarty不同,用于模板的函数不需要特别的定义。模板变量的函数调用格式为:XM

万维网 7698

实战避坑:示波器测量非隔离开关电源的炸机风险与隔离方案

本文详细分析了使用示波器测量非隔离开关电源时的炸机风险,揭示了地线环路导致的短路问题,并对比了四种防炸机解决方案,包括示波器隔离供电、拔掉电源地线、使用差分探头和被测板隔离供电。重点推荐使用隔离变压器方案,确保测量安全与精度,同时提供了实操建议与经验分享,帮助工程师避免常见测量事故。

weixin_29224309的博客 559

Win11实时字幕还能这么玩?手把手教你打造专属‘AI字幕机’,告别视频网站无字幕困扰

本文详细介绍了如何利用Win11的实时字幕功能打造全平台通用的AI字幕系统。通过C#抓取程序、Node.js中转服务和前端展示界面的组合,实现自动抓取系统字幕并实时推送到任意网页视频的方案,有效解决在线视频无字幕的困扰。

weixin_33735077的博客 392

php前台调用后台方法,JavaScript_JavaScript调用后台的三种方法实例,方法一:直接使用<%=%>调 - phpStudy...

JavaScript调用后台的三种方法实例方法一:直接使用调用前台JS:var methodStr = "";alert(methodStr);后头方法:public static string BehindMethod(){return "这是一个后台的方法";}方法二:用ajax调用前台js:var params = '{ext:"p9hp"}'; //参数,注意参数名要注意和后台方法参数名...

weixin_34545862的博客 343

告别 RPA 和 Selenium,MCP + Playwright 成为自动化开发新宠!

摘要: 随着数字化转型加速,传统自动化工具(如RPA和Selenium)在复杂场景中暴露出开发成本高、灵活性不足等问题。新一代解决方案MCP(Model Context Protocol)与Playwright的结合,通过AI与自动化的无缝对接,实现了智能化的任务处理。MCP支持自然语言交互和上下文感知,开发者无需编写复杂代码即可生成自动化脚本;Playwright则提供多浏览器支持、高性能和易用性。二者结合显著提升开发效率,使自动化更智能、灵活。文章还对比了VS Code与Trae中配置Playwrigh

我先测了 2209

thinkphp 的 URL 中的 & 被转义成了 & 成了死链接

thinkphp 的 URL 中的 & 被转义成了 &amp; 成了死链接 FANWE后台用的THINKPHP的系统,在本地安装颇费功夫,先是提示没有授权,解决了之后,URL 中的 & 被转义成了 &amp; 链接就成了死链; 去查了查 THINKPHP 的系统说明,也没找到类似的问题; ...

weixin_30512043的博客 1428

自抗扰控制ADRC原理解析及案例应用

ESO的设计通常基于系统动态方程的线性化或近似模型,其输出包括系统状态的估计值和总扰动的估计值。非线性状态误差反馈控制律(Nonlinear State Error Feedback,NLSEF)是ADRC的最后一个环节,负责根据ESO和TD提供的信息生成控制信号。ADRC的另一个重要发展方向是与其他控制策略的融合,如模糊控制、神经网络和自适应控制等,以进一步提高系统的鲁棒性和适应性。ADRC的参数主要包括扩张状态观测器(ESO)的参数和非线性状态误差反馈控制律(NLSEF)的参数。

LIUMAO99的博客 9285

数据挖掘在人力资源分析中的实战案例

在当今竞争激烈的商业环境中,人力资源管理对于企业的成功至关重要。有效的人力资源管理能够提高员工绩效、降低员工流失率、优化人才招聘等。而数据挖掘技术为人力资源管理提供了强大的工具,通过对大量人力资源数据的分析,可以发现潜在的规律和模式,为企业的决策提供有力支持。本文的目的是通过实际案例展示数据挖掘在人力资源分析中的具体应用,涵盖员工绩效预测、人才招聘筛选、员工流失分析等多个方面。通过详细的案例分析,帮助读者理解数据挖掘技术在人力资源管理中的实际操作和应用价值。

移动开发前沿的博客 489

php找出当前函数被那个函数(文件)调用

debug_print_backtrace(); var_dump(debug_backtrace());

buyue 2680

Python爬虫实战:携程/飞猪酒店信息爬取与动态价格分析

在当今数字化旅游时代,酒店预订平台的复杂筛选条件和动态定价机制为数据分析和价格监控带来了巨大挑战。本文将深入探讨如何使用最新的Python爬虫技术来抓取携程和飞猪平台的酒店信息,处理复杂的筛选条件,并解析动态价格数据。本文详细介绍了如何使用最新的Python爬虫技术来抓取携程和飞猪平台的酒店信息。通过结合httpxplaywrightparsel强大的反反爬虫能力:通过浏览器指纹伪装、请求签名、智能延迟等技术应对各种反爬措施高效的数据解析:使用CSS选择器和XPath精确提取所需信息灵活的数据存储。

2201_76125261的博客 414

前台html调用函数 格式化输出

仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用。用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和smarty不同,用于模板的函数不需要特别的定义。模板变量的函数调用格式为: XML/HTML代码 {$varname|function1|function2=arg1,arg2,###}...

weixin_30500289的博客 172

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

php里html加n,thinkphp 前台html调用函数&n…

仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用。用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和smarty不同,用于模板的函数不需要特别的定义。模板变量的函数调用格式为:XML/HTML代码{$varname|function1|function2=arg1,arg2,### }说明:{ 和 ...

weixin_36304806的博客 267

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

thinkphp 前台html调用函数&n…

仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用。用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和smarty不同,用于模板的函数不需要特别的定义。 模板变量的函数调用格式为: XML/HTML代码 {$varname|function1|function2=arg1,arg2,### }  

Peter的游击战 540

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

thinkphp前台html格式化输出日期

输出格式: {$time|strtotime|date="Y年m月d日",###} 格式说明: $time 是日期字符串,一般后台的时间是"Y-m-d H:i:s" strtotime()把字符串转化为时间整数 date(format, timestamp) 把整数时间timestamp按照format格式转换为字符串 "###"表示前面的变量(即$time)在date函数中的传入位置 举例: <span>{$v.artdate}</span> // 2018-1

风清无际 773

thinkphp:HTML界面时间戳格式化,字符串截取

1、HTML界面时间戳格式化 {$shijiancuo|date="Y-m-d H:s", ###} 2、HTML界面字符串截取 <p class="renwu_xq_pa">平台账号:{$vo.taskuser|substr=0,13}</p>

BigGod_lxj的博客 672

thinkphp模版调用函数方法

thinkphp模版调用函数方法 {变量|函数1|函数2|函数3=参数1,参数2,参数3,###} ###为第4个参数,代表变量替换为第4个参数 举例: {$username|substr=0,3}取标题中前3个字符 {$times|date='Y-m-d H:i:s',###}将times时间戳转换为日期格式 ====================================

小画家 3501

html5 自动格式化,VSCode插件JS-CSS-HTML Formatter自动格式化代码

VSCode插件JS-CSS-HTML Formatter自动格式化代码当你Ctrl+S保存代码时,自动格式化代码。本来很好用,但是修改thinkphp模板文件时,就有问题了。因为js代码里面,调用数据库中的数据,可能就不符合js的语法了,按js语法格式化后,就不能正常显示数据了。所以就不用这个插件了。比如:ob.setValue("is_sh", {$info['is_sh']|default=...

weixin_29288653的博客 2458
上一篇: Powerdesigner显示列名
下一篇: php 获取客户端的ip、地理信息、浏览器信息、本地真实ip
AiHubMax
博客等级 码龄15年 27粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值