最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2014年06月19日 16:53:24   投稿:shichen2014  
這篇文章主要介紹了ThinkPHP3.1.2模塊和操作映射,需要的朋友可以參考下

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

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

1.模塊映射

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

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

URL_MODULE_MAP是一個數(shù)組,每個數(shù)組項表示:

'模塊映射名'=>'實際模塊名'

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

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

變成了:

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

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

2.操作映射

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

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

URL_ACTION_MAP參數(shù)是一個二維數(shù)組,每個數(shù)組項表示:

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

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

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

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

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

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

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

則,原來的注冊地址

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

變成了

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


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

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

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

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

總結(jié):

模塊和操作映射可以用于如下場合:

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

需要注意的事項:

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

相關(guān)文章

  • Yii數(shù)據(jù)模型中rules類驗證器用法分析

    Yii數(shù)據(jù)模型中rules類驗證器用法分析

    這篇文章主要介紹了Yii數(shù)據(jù)模型中rules類驗證器用法,結(jié)合實例形式分析了rules類驗證器的簡單使用方法,代碼注釋中包含了相關(guān)方法的使用說明,需要的朋友可以參考下
    2016-07-07
  • WordPress特定文章對搜索引擎隱藏或只允許搜索引擎查看

    WordPress特定文章對搜索引擎隱藏或只允許搜索引擎查看

    這篇文章主要介紹了WordPress特定文章對搜索引擎隱藏或只允許搜索引擎查看的方法,可以根據(jù)SEO的需要來進(jìn)行調(diào)整,需要的朋友可以參考下
    2015-12-12
  • Laravel5.1自定義500錯誤頁面示例

    Laravel5.1自定義500錯誤頁面示例

    這篇文章主要介紹了Laravel5.1自定義500錯誤頁面的方法,結(jié)合實例形式分析了Laravel5.1自定義錯誤頁面的相關(guān)文件修改技巧,需要的朋友可以參考下
    2016-10-10
  • php二維碼生成以及下載實現(xiàn)

    php二維碼生成以及下載實現(xiàn)

    這篇文章主要介紹了php二維碼生產(chǎn)以及下載實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • 最新評論

    福建省| 阿克陶县| 九寨沟县| 溧水县| 新田县| 临江市| 苍南县| 平江县| 德保县| 安龙县| 威信县| 道孚县| 项城市| 泗阳县| 商河县| 沂源县| 昌邑市| 绥中县| 裕民县| 崇州市| 宝应县| 麻城市| 杭锦旗| 武乡县| 湛江市| 江津市| 塔河县| 维西| 石林| 乡城县| 榆中县| 伊金霍洛旗| 镇巴县| 白山市| 大理市| 湄潭县| 大港区| 隆尧县| 宝清县| 临洮县| 乌拉特中旗|