日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

php国外地址生成,thinkphp url生成

發(fā)布時(shí)間:2025/3/15 php 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php国外地址生成,thinkphp url生成 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

為了配合所使用的URL模式,我們需要能夠動(dòng)態(tài)的根據(jù)當(dāng)前的URL設(shè)置生成對(duì)應(yīng)的URL地址,為此,ThinkPHP內(nèi)置提供了U方法,用于URL的動(dòng)態(tài)生成,可以確保項(xiàng)目在移植過(guò)程中不受環(huán)境的影響。

定義規(guī)則

U方法的定義規(guī)則如下(方括號(hào)內(nèi)參數(shù)根據(jù)實(shí)際應(yīng)用決定):

U(‘地址表達(dá)式‘,[‘參數(shù)‘],[‘偽靜態(tài)后綴‘],[‘顯示域名‘])

地址表達(dá)式

地址表達(dá)式的格式定義如下:

[模塊/控制器/操作#錨點(diǎn)@域名]?參數(shù)1=值1&參數(shù)2=值2...

如果不定義模塊的話 就表示當(dāng)前模塊名稱,下面是一些簡(jiǎn)單的例子:

U(‘User/add‘)// 生成User控制器的add操作的URL地址

U(‘Blog/read?id=1‘)// 生成Blog控制器的read操作 并且id為1的URL地址

U(‘Admin/User/select‘)// 生成Admin模塊的User控制器的select操作的URL地址

參數(shù)

U方法的第二個(gè)參數(shù)支持?jǐn)?shù)組和字符串兩種定義方式,如果只是字符串方式的參數(shù)可以在第一個(gè)參數(shù)中定義,例如:

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‘)

三種方式是等效的,都是生成Blog控制器的cate操作 并且cate_id為1?status為1的URL地址。

但是不允許使用下面的定義方式來(lái)傳參數(shù)

U(‘Blog/cate/cate_id/1/status/1‘);

偽靜態(tài)后綴

U函數(shù)會(huì)自動(dòng)識(shí)別當(dāng)前配置的偽靜態(tài)后綴,如果你需要指定后綴生成URL地址的話,可以顯式傳入,例如:

U(‘Blog/cate‘,‘cate_id=1&status=1‘,‘xml‘);

自動(dòng)識(shí)別

根據(jù)項(xiàng)目的不同URL設(shè)置,同樣的U方法調(diào)用可以智能地對(duì)應(yīng)產(chǎn)生不同的URL地址效果,例如針對(duì):

U(‘Blog/read?id=1‘);

這個(gè)定義為例。

如果當(dāng)前URL設(shè)置為普通模式的話,最后生成的URL地址是:

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

如果當(dāng)前URL設(shè)置為PATHINFO模式的話,同樣的方法最后生成的URL地址是:

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

如果當(dāng)前URL設(shè)置為REWRITE模式的話,同樣的方法最后生成的URL地址是:

http://serverName/Home/Blog/read/id/1

如果當(dāng)前URL設(shè)置為REWRITE模式,并且設(shè)置了偽靜態(tài)后綴為.html的話,同樣的方法最后生成的URL地址是:

http://serverName/Home/Blog/read/id/1.html

如果開(kāi)啟了URL_CASE_INSENSITIVE,則會(huì)統(tǒng)一生成小寫(xiě)的URL地址。

生成路由地址

U方法還可以支持路由,如果我們定義了一個(gè)路由規(guī)則為:

‘news/:id\d‘=>‘News/read‘

那么可以使用

U(‘/news/1‘);

最終生成的URL地址是:

http://serverName/index.php/Home/news/1

注意:如果你是在模板文件中直接使用U方法的話,需要采用 {:U(‘參數(shù)1‘, ‘參數(shù)2‘…)} 的方式,具體參考模板的使用函數(shù)內(nèi)容。

域名支持

如果你的應(yīng)用涉及到多個(gè)子域名的操作地址,那么也可以在U方法里面指定需要生成地址的域名,例如:

U(‘Blog/[email?protected]‘,‘id=1‘);

@后面?zhèn)魅胄枰付ǖ挠蛎纯伞?/p>

系統(tǒng)會(huì)自動(dòng)判斷當(dāng)前是否SSL協(xié)議,生成https://。

此外,U方法的第4個(gè)參數(shù)如果設(shè)置為true,表示自動(dòng)識(shí)別當(dāng)前的域名,并且會(huì)自動(dòng)根據(jù)子域名部署設(shè)置APP_SUB_DOMAIN_DEPLOY和APP_SUB_DOMAIN_RULES自動(dòng)匹配生成當(dāng)前地址的子域名。

錨點(diǎn)支持

大理石平臺(tái)價(jià)格表

U函數(shù)可以直接生成URL地址中的錨點(diǎn),例如:

U(‘Blog/read#comment?id=1‘);

生成的URL地址可能是:

http://serverName/index.php/Home/Blog/read/id/1#comment

thinkphp url生成

標(biāo)簽:

總結(jié)

以上是生活随笔為你收集整理的php国外地址生成,thinkphp url生成的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。