php 路由實現 PHP實現乙個簡單url路由功能

2021-10-22 21:28:04 字數 2290 閱讀 4754

game.weibo.com後面匹配到的項,指向了某個php頁面,然後根據引數獲取要訪問的遊戲應用標識,後資料庫或者快取裡查詢該應用標識,如果不存在則輸出錯誤提示,如果應用存在則載入遊戲應用鏈結位址。

現在寫乙個php例子,假設我的ip為192.168.0.33,我加了一層名為router的路徑,之後跟隨的是 「/模組名/方法名/引數1的key/引數1的value/….」

也就是要呼叫ha這個模組中的router方法,並傳入url後面的引數/a/b/c/d/index………….

第一步,首先要在伺服器的配置上對/router/路徑進行攔截

呼叫某個資料夾目錄下的index.php頁面,假定現在所有模組使用單獨的檔案存放於class目錄下,該目錄與router平級,如下圖所示:

第二步,路由分發器的實現(index.php)

1: 2:

3: 4:

路由測試~~

53: die('引數錯誤');

54: } else

59: }

60:61: $module_name = $arr_url['controller'];

62: $module_file = module_dir.$module_name.'.class.php';

63: $method_name = $arr_url['method'];

64:65: if (file_exists($module_file)) else

78: }

79:80: } else

83:84:

85: ?>

86:87:

88:

獲取請求的uri,然後拿到要載入的模組名、呼叫方法名,對uri引數進行簡單的判斷..

第三步,模組的編寫

根據上述的uri,我們要呼叫的是hello模組下的router方法,那麼可以在class目錄下定義乙個名為hello.class.php的檔案(注意linux下是區分大小寫的)

1: <?php

2:3: class hello

11:12: function router()

16:17: function printresult()

23: }

24:25: ?>

同理,我們可以編寫ha模組..

這算是實現了很簡單的url路由分發功能了…

本文參考:

PHP實現乙個簡單url路由功能

現在寫乙個php例子,假設我的ip為192.168.0.33,我加了一層名為router的路徑,之後跟隨的是 模組名 方法名 引數1的key 引數1的value 也就是要呼叫ha這個模組中的router方法,並傳入url後面的引數 a b c d index 第一步,首先要在伺服器的配置上對 rou...

PHP實現乙個簡單url路由功能

game.weibo.com後面匹配到的項,指向了某個php頁面,然後根據引數獲取要訪問的遊戲應用標識,後資料庫或者快取裡查詢該應用標識,如果不存在則輸出錯誤提示,如果應用存在則載入遊戲應用鏈結位址。現在寫乙個php例子,假設我的ip為192.168.0.33,我加了一層名為router的路徑,之後...

PHP實現乙個簡單url路由功能

game.weibo.com後面匹配到的項,指向了某個php頁面,然後根據引數獲取要訪問的遊戲應用標識,後資料庫或者快取裡查詢該應用標識,如果不存在則輸出錯誤提示,如果應用存在則載入遊戲應用鏈結位址。現在寫乙個php例子,假設我的ip為192.168.0.33,我加了一層名為router的路徑,之後...