hinkphp中u方法的定義規(guī)則如下(方括號內(nèi)參數(shù)根據(jù)實際應用決定):
u('[項目://][路由@][分組名-模塊/]操作? 參數(shù)1=值1[&參數(shù)n=值n]')
或者用數(shù)組的方式傳入?yún)?shù):
u('[項目://][路由@][分組名-模塊/]操作',array('參數(shù)1'=>'值1' [,'參數(shù)n'=>'值n']))
如果不定義項目和模塊的話 就表示當前項目和模塊名稱,下面是一些簡單的例子:
u('myapp://user/add') // 生成myapp項目的user模塊的add操作的url地址
u('blog/read?id=1') // 生成blog模塊的read操作并且id為1的url地址
u('admin-user/select') // 生成admin分組的user模塊的select操作的url地址
參數(shù)請確保使用 ?id=1&name=tp或者數(shù)組的方式來定義,雖然有些情況下u('blog/read/id/1')和u('blog/read?id=1')的效果一樣,但是在不同的url設置情況下,會導致解析的錯誤。
根據(jù)項目的不同url設置,同樣的u方法調(diào)用可以智能地對應產(chǎn)生不同的url地址效果,例如針對u('blog/read?id=1')這個定義為例。
如果當前url設置為普通模式的話,最后生成的url地址是:
htuhttp://<servername>/index.php?m=blog&a=read&id=1uth
如果當前url設置為pathinfo模式的話,同樣的方法最后生成的url地址是:
htuhttp://<servername>/index.php/blog/read/id/1uth
如果當前url設置為rewrite模式的話,同樣的方法最后生成的url地址是:
htuhttp://<servername>/blog/read/id/1uth
如果當前url設置為rewrite模式,并且設置了偽靜態(tài)后綴為.html的話,同樣的方法最后生成的url地址是:
htuhttp://<servername>/blog/read/id/1.htmluth
此外,u方法還可以支持路由,如果我們定義了一個名稱為view的路由,指向blog模塊的read操作,參數(shù)是id,那么u('view@?id=1')生成的url地址是:
htuhttp://<servername>/index.php/view/id/1ut
注意:u方法的路由支持 僅支持簡單路由,不支持泛路由和正則路由。
更多信息請查看IT技術(shù)專欄