亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

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

1.模塊映射

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

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

URL_MODULE_MAP是一個數組,每個數組項表示:

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

映射名稱不區(qū)分大小寫,所以設置后,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常量讀取當前模塊的URL名稱。

2.操作映射

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

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

URL_ACTION_MAP參數是一個二維數組,每個數組項表示:

'實際模塊名'=>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常量讀取當前操作在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函數自動支持

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

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

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

總結:

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

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

需要注意的事項:

在使用了模塊和操作映射后,對相關URL地址的路由定義可能需要調整。

相關文章

  • PHP語言對接抖音快手小紅書視頻/圖片去水印API接口源碼

    PHP語言對接抖音快手小紅書視頻/圖片去水印API接口源碼

    這篇文章主要介紹了PHP語言對接抖音快手小紅書視頻/圖片去水印API接口源碼,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • PHP讀取mssql json數據中文亂碼的解決辦法

    PHP讀取mssql json數據中文亂碼的解決辦法

    PHP及網頁使用UTF-8編碼,數據庫是sql server2008,使用默認編碼,當讀取數據庫數據時,使用php自帶的json_encode()返回到前端,結果中文不顯示。下面腳本之家小編給大家介紹PHP讀取mssql json數據中文亂碼的解決辦法,需要的朋友一起學習
    2016-04-04
  • Yii實現的多級聯(lián)動下拉菜單

    Yii實現的多級聯(lián)動下拉菜單

    這篇文章主要介紹了Yii實現的多級聯(lián)動下拉菜單,包括視圖、模型及控制器的相關實現代碼,涉及基于Yii的數據庫查詢、數組遍歷與數據顯示等相關操作技巧,需要的朋友可以參考下
    2016-07-07
  • smarty簡單應用實例

    smarty簡單應用實例

    這篇文章主要介紹了smarty簡單應用實例,簡單介紹了smarty中數據庫查詢、數組遍歷及調用模板顯示數據的相關技巧,簡單易懂,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • PHP四種基本排序算法示例

    PHP四種基本排序算法示例

    這篇文章主要介紹了PHP四種基本排序算法示例,本文用一個實例講解冒泡排序法、快速排序法、選擇排序法、插入排序法的使用,需要的朋友可以參考下
    2015-04-04
  • PHP中幾個可以提高運行效率的代碼寫法、技巧分享

    PHP中幾個可以提高運行效率的代碼寫法、技巧分享

    這篇文章主要介紹了PHP中幾個可以提高運行效率的代碼寫法、技巧分享,本文分享的5個方法都是在細微之處有所不同,一定要認真仔細的去看代碼哦,需要的朋友可以參考下
    2014-08-08
  • 詳解laravel passport OAuth2.0的4種模式

    詳解laravel passport OAuth2.0的4種模式

    這篇文章主要介紹了laravel passport OAuth2.0的4種模式,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • PHP 數組遍歷foreach語法結構及實例

    PHP 數組遍歷foreach語法結構及實例

    下面小編就為大家?guī)硪黄狿HP 數組遍歷foreach語法結構及實例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • Laravel-添加后臺模板AdminLte的實現方法

    Laravel-添加后臺模板AdminLte的實現方法

    今天小編就為大家分享一篇Laravel-添加后臺模板AdminLte的實現方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • PHP代碼實現爬蟲記錄——超管用

    PHP代碼實現爬蟲記錄——超管用

    這篇文章主要通過創(chuàng)建crawler數據庫,使用robot.php記錄來訪的爬蟲信息從而將信息插入數據庫,從而使用php代碼實現爬蟲記錄,有需要的小伙可以來參考下。
    2015-07-07

最新評論