天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

解密ThinkPHP3.1.2版本之模塊和操作映射

模板和操作映射功能是Thinkphp3.1.2版本支持的對(duì)模塊和操作設(shè)置的映射機(jī)制,由于可以通過(guò)改變配置動(dòng)態(tài)改變(實(shí)際真正改變,并非別名)URL訪問(wèn)地址,加強(qiáng)了應(yīng)用的安全性,而且,映射機(jī)制具有URL不區(qū)分大小寫(xiě)訪問(wèn)的特性,對(duì)于應(yīng)用的遷移也有很大的幫助。

因?yàn)椋胀ㄇ闆r下,如果需要更改URL的模塊或者操作訪問(wèn)的話,需要改動(dòng)的文件較多,容易導(dǎo)致關(guān)聯(lián)性出錯(cuò)。尤其是很多應(yīng)用需要遷移到新版本的時(shí)候,由于模型和控制器改動(dòng)較多,導(dǎo)致URL地址出現(xiàn)大的調(diào)整,通過(guò)模塊和操作映射功能,就可以很輕松的解決此類(lèi)問(wèn)題。

1.模塊映射

要定義模塊映射,我們只需要在配置文件中定義:

'URL_MODULE_MAP'=>array(  'user'   => 'Member',  'blog'   => 'Info', )

URL_MODULE_MAP是一個(gè)數(shù)組,每個(gè)數(shù)組項(xiàng)表示:

'模塊映射名'=>'實(shí)際模塊名'

映射名稱不區(qū)分大小寫(xiě),所以設(shè)置后,URL訪問(wèn)從原來(lái)的:

http://serverName/index.php/Member/indexhttp://serverName/index.php/Info/index

變成了:

http://serverName/index.php/user/indexhttp://serverName/index.php/blog/index

并且原來(lái)的訪問(wèn)URL是失效的,這也是和定義路由方式改變URL的區(qū)別之一。沒(méi)有定義映射的模塊訪問(wèn)不變。
定義了模塊映射后,可以通過(guò)MODULE_ALIAS常量讀取當(dāng)前模塊的URL名稱。

2.操作映射

不僅是模塊名稱可以映射,操作名稱也支持映射,而且是針對(duì)模塊來(lái)設(shè)置的,操作映射的定義方式為:

'URL_ACTION_MAP'=>array(  'Member'  => array(    'register' => 'add',    ),  'Info'   => array(    'list'   => 'index'    ), )

URL_ACTION_MAP參數(shù)是一個(gè)二維數(shù)組,每個(gè)數(shù)組項(xiàng)表示:

'實(shí)際模塊名'=>array(  '操作映射名1'=>'實(shí)際操作名1'  '操作映射名2'=>'實(shí)際操作名2'  ...... )

操作映射名不區(qū)分大小寫(xiě),如上定義后,URL訪問(wèn)從

http://serverName/index.php/Member/addhttp://serverName/index.php/Info/index

變成了(不考慮前面定義的模塊映射):

http://serverName/index.php/Member/registerhttp://serverName/index.php/Info/list

同樣,原來(lái)的URL地址訪問(wèn)則失效。沒(méi)有定義映射的操作訪問(wèn)地址不變。
定義了操作映射后,可以通過(guò)ACTION_ALIAS常量讀取當(dāng)前操作在URL地址中的操作名。
操作映射和模塊映射可以同時(shí)定義,沒(méi)有影響,例如:

'URL_MODULE_MAP'=>array(  'user'   => 'Member', ), 'URL_ACTION_MAP'=>array(  'Member'  => array(    'register888' => 'add',    ), )

則,原來(lái)的注冊(cè)地址

http://serverName/index.php/Member/add

變成了

http://serverName/index.php/user/register888


3.U函數(shù)自動(dòng)支持

可能很多人會(huì)擔(dān)心,在設(shè)置了模塊和操作映射后,U函數(shù)就會(huì)出現(xiàn)需要隨之改動(dòng)的情況。其實(shí)不需要擔(dān)心,因?yàn)閁函數(shù)內(nèi)部已經(jīng)自動(dòng)支持了模塊和操作映射的情況。
例如,原來(lái)在模板文件中使用了

<a href="{:U('Member/add')}">用戶注冊(cè)</a>

無(wú)論如何定義Member模塊和add操作的映射,U方法的寫(xiě)法始終保持不變,仍然會(huì)正確的指向映射后的URL地址。

總結(jié):

模塊和操作映射可以用于如下場(chǎng)合:

1、有經(jīng)常變化URL需要的場(chǎng)合
2、對(duì)URL安全性較高的場(chǎng)合
3、需要移植的應(yīng)用不希望改變URL地址的場(chǎng)合

需要注意的事項(xiàng):

在使用了模塊和操作映射后,對(duì)相關(guān)URL地址的路由定義可能需要調(diào)整

php技術(shù)解密ThinkPHP3.1.2版本之模塊和操作映射,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久re这里视频精品15 | 国产精品麻豆AV | 国产偷国产偷亚洲高清app | 国产成人在线免费 | AV午夜午夜快憣免费观看 | 大桥未久与黑人中出视频 | 噼里啪啦免费观看视频大全 | 夜色55夜色66亚洲精品网站 | 边做边爱BD免费看片 | 亚洲无遮挡 | 国产一级做a爰片久久毛片男 | 久久久伊人影院 | 欧美日本高清动作片www网站 | 一品道门在线观看免费视频 | 日本zljzljzlj精品 | 欧美三级aaa | 中文字幕无码A片久久 | 国产人妻人伦精品A区 | 国产AV在线传媒麻豆 | 欧美互交人妖247 | 91久久精一区二区三区大全 | 精品人妻伦一二三区久久AAA片 | 俄罗斯9一14 young处 | 国产午夜精品久久理论片小说 | 欧美一道本一区二区三区 | 久久大香萑太香蕉av | 亚洲高清中文字幕免费 | 女人张开腿让男人桶爽免 | 美女胸被男子强捏视频 | 久久精品热在线观看85 | 国产福利视频在线观看福利 | 无码日本亚洲一区久久精品 | 失禁 调教 刺激 哭喊男男 | 37pao成人国产永久免费视频 | 内射后入在线观看一区 | av在线观看网站免费 | 麻婆豆腐传媒视频免费 | 90后性爱视频 | 艳鉧动漫1~6全集观看在线 | 久久高清内射无套 | 国产午夜精品理论片久久影视 |