Chinaunix首页 | 论坛 | 博客
  • 博客访问: 95600
  • 博文数量: 109
  • 博客积分: 3411
  • 博客等级: 中校
  • 技术积分: 1155
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-01 09:04
文章分类

全部博文(109)

文章存档

2011年(109)

分类: 系统运维

2011-05-21 14:28:08


U方法可以用于方便的生成URL地址,并且可以智能识别项目的URL配置。
使用格式:
U('
项目名://路由名@组名-模块名/操作名?参数1=1&参数2=2')
或者
U('
项目名://路由名@组名-模块名/操作名',array('参数1'=>'1','参数2'=>'2'))
其中项目名 路由名 组名 和模块名都是可选参数
例如:

  1. U('App://Admin-User/add?pid=1')

    

表示生成项目名称为App 组名为Admin 模块名为Useradd操作的URL地址 并且传入参数pid=1
如果采用默认的项目配置,那么生成的URL地址类似于
App/Admin/User/add/pid/1
上面的方式等效于

  1. U('App://Admin-User/add',array('pid'=1))

复制代码

如果当前处于App项目下面,通常可以写为

  1. U('Admin-User/add?pid=1')

复制代码

如果没有分组,那么一般是

  1. U('User/add?pid=1')

复制代码

如果生成的URL是一个采用路由访问的地址 可以写成

  1. U('App://User@?id=1')

会生成 App/User/id/1 这样的URL地址

使用U方法生成URL地址 可以根据当前的项目配置智能识别:
1
、自动判断当前的URL模式
2
、自动判断当前的PATHINFO分隔符设置
3
、自动添加设置的伪静态后缀
以上特性使得项目在多环境部署和移植的时候 更加方便

U
方法还有两个参数
第三个参数设置为True的话 可以自动跳转到生成的URL地址
第四个参数如果设置为False的话 可以忽略当前的伪静态设置

如果需要在模板文件中使用U方法,可以采用下面的快捷方式:

  1. {:U('App://Admin-User/add?pid=1')}

Actionredirect方法的前面两个参数的用法和U方法一样,例如

  1. $this->redirect('App://Admin-User/add?pid=1');

复制代码

 

阅读(728) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~