1、执行函数并输出返回值:格式:{:function(…)}例如,输出U函数的返回值:

{:U('User/insert')}编译后的PHP代码是

<?php  echo U('User/insert');?>2、执行函数但不输出:格式:{~function(…)}例如,调用say_hello函数:

{~say_hello('ThinkPHP')}编译后的PHP代码是:

大U函数的使用方法

U方法用于完成对URL地址的组装,特点在于可以自动根据当前的URL模式和设置生成对应的URL地址,格式为:

U('地址','参数','伪静态','是否跳转','显示域名');

在模板中使用U方法而不是固定写死URL地址的好处在于,一旦你的环境变化或者参数设置改变,你不需要更改模板中的任何代码。

在模板中的调用格式需要采用 {:U('地址', '参数'…)} 的方式

基本用法

U方法的用法示例:

U('User/add') // 生成User模块的add操作地址

复制代码

也可以支持分组调用:

U('Home/User/add') // 生成Home分组的User模块的add操作地址

复制代码

当然,也可以只是写操作名,表示调用当前模块的

U('add') // 生成当前访问模块的add操作地址

复制代码

除了分组、模块和操作名之外,我们也可以传入一些参数:

U('Blog/read?id=1') // 生成Blog模块的read操作 并且id为1的URL地址

复制代码

U方法的第二个参数支持传入参数,支持数组和字符串两种定义方式,如果只是字符串方式的参数可以在第一个参数中定义,下面几种方式都是等效的:

U('Blog/cate',array('cate_id'=>1,'status'=>1))

U('Blog/cate','cate_id=1&status=1')

U('Blog/cate?cate_id=1&status=1')

复制代码

但是不允许使用下面的定义方式来传参数:

U('Blog/cate/cate_id/1/status/1')

复制代码

根据项目的不同URL设置,同样的U方法调用可以智能地对应产生不同的URL地址效果,例如针对:

U('Blog/read?id=1')

复制代码

这个定义为例。

如果当前URL设置为普通模式的话,最后生成的URL地址是:

http://serverName/index.php?m=Blog&a=read&id=1

复制代码

如果当前URL设置为PATHINFO模式的话,同样的方法最后生成的URL地址是:

http://serverName/index.php/Blog/read/id/1

php代码function,ThinkPHP ~function()和function()方法和U方法相关推荐

  1. 详细说说ActionScript中function的call()方法和apply()方法

    今天看到function的call和apply这两个方法,上网查了一下,有人说这两个方法是用来动态改变函数指向,并给了一个例子:如下 import customize.my_class;       ...

  2. ThinkPHP 中M方法和D方法的具体区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  3. TP框架中的A方法和R方法

    ThinkPHP 跨模块调用操作方法(A方法与R方法) 跨模块调用操作方法 前面说了可以使用 $this 来调用当前模块内的方法,但实际情况中还经常会在当前模块调用其他模块的方法.ThinkPHP 内 ...

  4. Java 8 辣么大(lambda)表达式不慌之—–(四)示例-Collectors中的中的joining 方法和mapping方法

    Java 8 辣么大(lambda)表达式不慌之-–(四)示例-Collectors中的joining 方法和mapping方法 joining 方法 mapping方法 先定义好后面做示例要用的数据 ...

  5. show()方法和hide()方法

    1.show()方法和hide()方法是jquery中最基本的动画方法.为一个元素调用hide()方法,会将该元素样式改为none $("element").hide()与$(&q ...

  6. charAt()方法和charCodeAt()方法—— 从字符串中选取一个字符.

    charAt() 方法和charCodeAt () 方法用于选取字符串中某一位置上的单个字符.对于检查用户输入的有效性 ,这两个方法也是非常有用的. charAt() 方法具有一个参数 :即所选取字符 ...

  7. charat转数字方法html,charAt()方法和charCodeAt()方法

    charAt()方法和charCodeAt()方法-- 从字符串中选取一个字符 charAt()方法和charCodeAt()方法用于选取字符串中某一位置上的单个字符.对于检查用户输入的有效性,这两个 ...

  8. JS中的call()方法和apply()方法用法总结

    1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法. 2. 相同点:这两个方法的作用是一样的. 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖 ...

  9. ExtJS中listener方法和handler方法的区别

    listener方法和handler方法的区别在文档中的说明的太玄乎了,看不懂 listeners监听能够对一个click Event事件添加任意多个的事件响应处理函数 而handler处理只能够通过 ...

  10. JS服务器端开发基础篇(Array.slice方法和splice方法)

    Array.slice方法和splice方法在众多的JS数组中属于比较复杂的一个方法,而且容易记混.搜索网络上很多资料都没有发现系统的总结.特别归纳如下,不完全处还希望各位批评指正.  一.slice ...

最新文章

  1. day20 文件上传下载
  2. [日常] Go语言圣经-基于select的多路复用习题
  3. 查找nginx安装的路径以及相关安装操作命令
  4. 检索数据_8_查询语句里执行条件判断
  5. 21个ui设计技巧,让你的设计不落伍
  6. python标准库怎么用_Python常用标准库使用(一)
  7. Re:[转]Microsoft .Net Remoting系列专题
  8. RecyclerView之自定义LayoutManager和SnapHelper
  9. 整理自己的.net工具库
  10. 线性表的链式存储——单链表的遍历与优化
  11. 二进制流 最后一段数据是最后一次读取的byte数组没填满造成的
  12. 解决关于phpstorm打开速度很慢的问题
  13. 仿花生日记淘宝客双端原生APP网站源码
  14. 高速下载文件的方法(对百度,城通等网盘无效)
  15. 一个简单的搜狗微信公众号案例
  16. Web前端大作业 体育主题足球网页制作 足球梅西HTML网页设计制作 dreamweaver学生网页源代码
  17. Datadog——Monitor as a service(笔记)
  18. 透过上层div点击下层div
  19. python语言编写的DLL注入工具
  20. el-tree实现仅限叶子节点显示勾选框,并且只能单选

热门文章

  1. nodejs项目npm start背后的工作原理
  2. Marketing Cloud Launchpad动态tile显示数字刷新的触发逻辑
  3. 如何让某些用户对Marketing Cloud的contact数据只能实施只读操作
  4. Java源码研究之object to json string debug
  5. SAP ABAP OData gateway框架序列化和反序列化(serialization deserialization)的实现逻辑
  6. Backbone - create model
  7. 如何对C4C UI上的手机号码字段加上自定义验证逻辑
  8. 如何在Java代码中使用SAP云平台CloudFoundry环境的环境变量
  9. the c programming language_C.I. 直接黄4(C.I. 24890)生产工艺。 CAS号 [3051114]
  10. mysql 执行报错及解决方法 Multi-statement transaction required more than ‘max_binlog_cache_size‘