PHP路由模式Path Info模式

2021-07-12 05:08:13 字數 803 閱讀 8159

<?

php /*

* 小黃牛php部落格 - 基於單一入口php框架path_info模式路由功能實現

* * 從如上位址中我們無法再像普通路由那樣「直觀」的看見c和m的存在,只能在index.php後面看到兩個用-符號分割的「偽引數」,控制器(controllers)和方法(method)

* path_info模式路由的關鍵就在於,我們如果從url中提煉出c和m的存在,然後返回給get讓路由器去進行解析

* 就像上面的url,當前訪問的是index控制器下的showlist方法,並進行了偽字尾偽裝

* 話不多說,我們立刻來看下**吧

* 測試url如下:

*   訪問預設控制器和方法

* index.php/ceshi-showlist.html   訪問ceshi控制器下的showlist方法  

*/ //控制器基類

class controller

//需要用這個方法來解析url,並對c和m重新賦值

public function analysis() }

} //測試控制器-index

class indexcontroller

public function showlist() 

} //測試控制器-ceshi

class ceshicontroller

public function showlist() 

} //例項化控制器

$res = new controller();

//載入路由監控

$res ->curl();

PHP開啟PATH INFO訪問

apache2.2.22開啟pathinfo模式的支援 小柒 小柒 2013 03 12 18 46 59 昨天新配置了乙個php整合開發環境,安裝完後,把專案放到apache伺服器的www目錄下,發現只能開啟首頁,其他頁面全部無法開啟,當時比較納悶,以為是伺服器沒有配置好,測試了一下,發現環境配置...

PATHINFO模式是thinkphp特有的嗎?

pathinfo當然不是某個框架特有的,pathinfo嚴格上講是http伺服器提供的乙個預定義變數,在許多的框架中有乙個重要的元件叫做路由器,這個元件可以通過使用pathinfo來實現。考慮以下 所以,該功能配合rewrite功能可實現去除位址中的請求檔案。另外,php提供名為pathinfo 的...

nginx 下開啟pathinfo模式

預設nginx是不開啟pathinfo模式的,需要配置,首先去php.ini裡把 cgi.fix pathinfo開啟 並設定為1 cgi.fix pathinfo 1 重啟php 然後需要nginx.conf裡配置東西 這個是我原配置。然後找了段 我理解的意思是 把location相關的原 全部刪...