首页 > PHP资讯 > PHP培训技术 > ThinkPHP使用U方法自动生成URL超链接

ThinkPHP使用U方法自动生成URL超链接

PHP培训技术
ThinkPHP U方法

U 方法是 ThinkPHP 内置的一个快捷方法,可以根据系统 URL 模式配置动态的生成智能的 URL
地址。

由于 ThinkPHP 支持各种不同的 URL 模式,另外还有项目分组模式,因此当部署环境发生变化时,有时候可能会改变 URL 模式,而
U 方法正是解决不同环境配置情况下的 URL 统一问题。除了动态生成 URL 以自适应系统配置外,U 方法还有一个好处是可以自动加上伪静态后缀。
U
方法语法

U 方法的定义规则如下:

('[分组/模块/操作]?参数'
[,'参数','伪静态后缀','是否跳转','显示域名'])

方括号内为可选参数,如果不指明分组、模块以及操作的话,就默认为当前分组、当前模块与当前操作。
U方法实例

U
方法作为 ThinkPHP 的系统函数,可以直接用于操作方法中,也可用于模板中(见后面文字)。

假设当前为 Index 模块的 index
操作,生成当前模块的 list 操作 URL:

U('list?cat_id=1&status=1')

生成的 URL
为相对链接:http://www.phpo.com/index.php/Index/list/cat_id/1/status/1

同时 U
方法还支持下面两种定义格式,上面的例子与下面的定义格式是等效的:

U'list',array('cate_id'=>1,'status'=>1))
U'list','cate_id=1&status=1')

模板中使用
U 方法

U 方法不仅能在操作方法中动态生成 URL 地址,其实更常用的是在模板中生成超链接地址:



各种
URL 模式下的 U 方法结果对比

U 方法根据各种 URL 模式而自适应的生成不同的 URL 格式,如上面例子在各模式下生成的 URL
对比如下:

普通兼容模式:http://www.phpo.com/index.php?m=Index&a=list&cat_id=1&status=1
Pathinfo
模式:http://www.phpo.com/index.php/Index/list/cat_id/1/status/1
Rewrite
模式:http://www.phpo.com/Index/list/cat_id/1/status/1
Rewrite 模式,伪静态后缀为
.html:http://www.phpo.com/Index/list/cat_id/1/status/1.html
Rewrite 模式,使用 -
分隔符与 .html 后缀:http://www.phpo.com/Index-list-cat_id-1-status-1.html

常见 U
方法使用例子




  1. // 当前模块 list 操作
  2. U('list?cat_id=1&status=1')
  3. // 其他模块操作
  4. U('Blog/read?id=1') // 生成Blog模块的read操作,并且id为1的URL地址
  5. // 其他分组
  6. U('Admin/User/view?uid=1') // 生成Admin分组的User模块的view操作的URL地址

PHP培训技术

本文由欣才IT学院整理发布,未经许可,禁止转载。
支持47不支持0