CodeIgniter配置之routes.php用法实例分析_PHP
本文实例分析了CodeIgniter配置之routes.php用法。分享给大家供大家参考,具体如下:
application/config/routes.php中定义了一个名为$route的数组,用来设置默认路由和404页面以及可以设置一些匹配方式。
默认的配置如下:
$route['default_controller'] = "welcome"; $route['404_override'] = '';
default_controller指定默认的控制器名称,404_override指定当出现404时调用的控制器名称。有时候可能出现解析不成功,或者一直在默认页面,我们可以调用$this->router打印一下当前解析的控制器和Acion名称。比如可以在MY_Controller中如下打印:
var_dump($this->router->fetch_directory()); var_dump($this->router->fetch_class()); var_dump($this->router->fetch_method());
确定下解析到哪个控制器了, 然后在看看URL的配置、服务器配置,以及可以在Router.php 和URI.php中调试下。
$route数组也可以通过通配符(:num, :any)、正则来设置重写规则,下面是一些简单的例子:
1、将 http://pc.local/admin/detail_1.htm 请求解析到 http://pc.local/admin/detail.htm?user_id=1 处理。
Codeigniter并不支持包含查询字符串的重写规则,这个规则看起来应当这么写:
代码如下:
$route['admin/detail_(:num)'] = 'admin/detail?user_id=$1';
但实际上并未生效,程序匹配到admin/detail?user_id=1后用"/"分隔,索引为0的为控制器名,索引为1的为方法名,也就是会将上面的 detail?user_id=1赋值给方法名,结果可想而知就404了。搞清分隔原理后可以在detail后面增加一个斜杠,确保类名和方法名的正确,如:
代码如下:
$route['admin/detail_(:num)'] = 'admin/detail/?user_id=$1';
但此时又存在参数的获取问题了,会将第三个参数传递给方法,如果需要使用$_GET或者$this->input->get获取还需要对参数进行处理,如:
代码如下:
parse_str(ltrim($query_string, '?'), $_GET);
2、对PATH_INFO的URL形式重写规则还是比较支持的。如要实现http://pc.local/admin/1这种格式:
代码如下:
$route['admin/(:num)'] = 'admin/detail/$1';
参数的获取就只能通过段落的方式来获取了。
注意: 路由将会按照定义的顺序来运行.高层的路由总是优先于低层的路由.
最后,能使用CI来设置的路由还是建议使用CI来设置,不依赖服务器配置。
更多关于CodeIgniter框架相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》
希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

標題:如何在PyCharm中正確配置Git在現代軟體開發中,版本控制系統是非常重要的工具,而Git作為其中一種流行的版本控制系統,為開發者提供了強大的功能和靈活的操作。而PyCharm作為一款功能強大的Python整合開發環境,自備了對Git的支持,能夠讓開發者更方便地管理程式碼版本。本文將介紹如何在PyCharm中正確地配置Git,以便於在開發過程中更好地

標題:Linux系統中GDM的工作原理及設定方法在Linux作業系統中,GDM(GNOMEDisplayManager)是一種常見的顯示管理器,用於控制圖形使用者介面(GUI)登入和使用者會話管理。本文將介紹GDM的工作原理和設定方法,以及提供具體的程式碼範例。一、GDM的工作原理GDM是GNOME桌面環境下的顯示管理器,負責啟動X伺服器並提供登入介面,使用者輸

PyCharm是一款強大的整合開發環境(IDE),而PyTorch則是深度學習領域備受歡迎的開源架構。在機器學習和深度學習領域,使用PyCharm和PyTorch進行開發可以大大提高開發效率和程式碼品質。本文將詳細介紹如何在PyCharm中安裝設定PyTorch,並附上具體的程式碼範例,幫助讀者更好地利用這兩者的強大功能。第一步:安裝PyCharm和Python

了解LinuxBashrc:功能、配置與使用方法在Linux系統中,Bashrc(BourneAgainShellruncommands)是一個非常重要的配置文件,其中包含了系統啟動時自動運行的各種命令和設定。 Bashrc文件通常位於使用者的家目錄下,是一個隱藏文件,它的作用是為使用者自訂設定Bashshell的環境。一、Bashrc的功能設定環境

Win11系統如何設定工作群組工作群組是一種在區域網路中連接多台電腦的方式,它允許電腦之間共用檔案、印表機和其他資源。在Win11系統中,設定工作群組非常簡單,只需依照下列步驟操作即可。步驟1:開啟「設定」應用程式首先,點擊Win11系統的「開始」按鈕,然後在彈出的選單中選擇「設定」應用程式。你也可以使用快捷鍵“Win+I”開啟“設定”。步驟2:選擇「系統」在「設定」應用程式中,你會看到多個選項。請點選「系統」選項,進入系統設定頁面。步驟3:選擇「關於」在「系統」設定頁面中,你會看到多個子選項。請點

PyCharm是常用的整合開發環境(IDE),在日常開發中,使用Git管理程式碼是不可或缺的。本文將介紹如何在PyCharm中設定Git,並使用Git進行程式碼管理,並附帶具體程式碼範例。第一步:安裝Git首先,確保在你的電腦上已經安裝了Git。如果沒有安裝,可以前往[Git官網](https://git-scm.com/)下載並安裝最新版本的Git

標題:Linux系統中如何配置和安裝FTPS,需要具體程式碼範例在Linux系統中,FTPS是一種安全的檔案傳輸協議,與FTP相比,FTPS透過TLS/SSL協議對傳輸的資料進行加密,提高了資料傳輸的安全性。在本文中,將介紹如何在Linux系統中設定和安裝FTPS,並提供特定的程式碼範例。步驟一:安裝vsftpd開啟終端,輸入以下指令安裝vsftpd:sudo

Maven是Java專案管理和建置工具,被廣泛應用於Java專案的開發中。在使用Maven進行專案建置的過程中,往往會遇到一些常見的環境配置問題。本文將針對這些常見問題進行解答,並提供具體的程式碼範例,幫助讀者避免常見的配置錯誤。 1.Maven環境變數配置錯誤問題描述:使用Maven時,如果環境變數配置不正確,可能導致Maven無法正常運作。解決方法:確保
