zoukankan      html  css  js  c++  java
  • Thinkphp中的U函数(Thinkphp3.2.3版本)

    U函数的作用是根据当前的URL设置生成对应的URL地址,使用U函数可以确保项目在移植过程中不受环境的影响。

    U方法的定义规则如下(方括号内参数根据实际应用决定):

    U('地址表达式',['参数'],['伪静态后缀'],['显示域名'])

    其中地址表达式的格式定义如下:

    [模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2...

    模块/控制器如果与当前模块、控制器相同的话可以省略。

    参数值既可以通过'地址表达式'传递也可以通过'参数'传递,而通过'参数'传递时既可以是字符串也可以是数组,所以下面三个URL地址是等效的:

    U('blog/read?id=5&stu=0')
    U('blog/read','id=5&stu=0')
    U('blog/read',array('id=>5','stu=>0'))

    但下面的表达式是错误的:

    U('blog/read/id/5/stu/0')

    另外,U函数会自动识别当前URL模式,并按当前URL模式生成URL地址。

    实例与说明

    假设当前URL地址是 http://www.bnzoo.com/Home/Index/index,现在要访问 http://www.bnzoo.com/Home/Index/text/id/25/ty/1,U函数表达如下:

    //下面三个表达是等效的
    U('text?id=25&ty=1')
    U('text','id=25&ty=1')
    U('text',array('id=>25','ty=>1'))

    访问 http://www.bnzoo.com/Home/Form/text/id/25/ty/1,U函数表达如下:

    //下面三个表达是等效的
    U('Form/text?id=25&ty=1')
    U('Form/text','id=25&ty=1')
    U('Form/text',array('id=>25','ty=>1'))

    访问 http://www.bnzoo.com/Admin/Form/text/id/25/ty/1,U函数表达如下:

    //下面三个表达是等效的
    U('Admin/Form/text?id=25&ty=1')
    U('Admin/Form/text','id=25&ty=1')
    U('Admin/Form/text',array('id=>25','ty=>1'))

    如果www.bnzoo.com和admin.bnzoo.com都指向当前应用的话,想通过 admin.bnzoo.com 访问 Admin/Form/text/id/25/ty/1,即访问 http://admin.bnzoo.com/Admin/Form/text/id/25/ty/1,U函数表达如下:

    //下面三个表达是等效的
    U('Admin/Form/text@admin.bnzoo.com?id=25&ty=1')
    U('Admin/Form/text@admin.bnzoo.com','id=25&ty=1')
    U('Admin/Form/text@admin.bnzoo.com',array('id=>25','ty=>1'))

    如果设置了路由,U函数也能支持路由。比如我们定义一个路由规则:

    'text/:idd'=>'Index/text'

    U函数下面的表达都是可以的:

    U('/text/25')
    U('Index/text?id=25')

    假设当前地址是 http://www.bnzoo.com/Home/Index/index,那么它们生成的URL地址分别是:

    http://www.bnzoo.com/Home/text/25
    http://www.bnzoo.com/Home/Index/text/id/25



    突破传统的上网方式,不用记网址、不用搜索引擎,输入一两个字母就能迅速打开你想访问的任何网站——小笨猪网址索引
  • 相关阅读:
    YaCy is a free search engine
    html css js dom树到底是什么关系
    清华的搜索课程
    Gentle中的O/R映射Attributes
    PHP headers_sent() 函数
    阿里云服务器怎么设置能让网站发邮件
    关于PHP 开启zlib gzip配置
    thinkphp无法加载控制器:Admin
    阿里云邮件服务器怎么设置才能在QQ邮箱访问,互发邮件?
    linux下配置apachenutch 笨笨熊
  • 原文地址:https://www.cnblogs.com/programs/p/5488816.html
Copyright © 2011-2022 走看看