主要是乙個小專案,沒必要使用框架,就簡單處理了使用乙個檔案類呼叫多個方法,避免重複建立php檔案去實現這些類方法的問題,寫好了還是記錄一下,方便日後繼續使用:
pathinfo模式 ,例如:index.php/job/get_list?a=1&b=2&c=3
通過這個uri可以訪問到 job.php中 job類的getlist()方法,其中傳入了引數[『a』=>』1』,』b』=>』2』,』c』=>』3』]
單一入口應用程式的所有http請求都是通過某乙個檔案(比如index.php)接收並由這個檔案**到功能**中去。
單一入口應用程式優勢:可以對url引數和post進行必要的檢查和特殊字元過濾、記錄日誌、訪問統計等等各種可以集中處理的任務,類似如一些許可權控制、使用者登入方面的判斷和操作可以統一處理了。
由於這些工作都被集中到了單入口檔案(index.php)來完成,可以減輕我們維護其他功能**的難度。
比如你訪問**,
這個index.php就是單入口檔案,訪問任何頁面都是在index.php後面加引數,比如登入頁:
?m=login
優點就是比較方便管理,可以配置一些統一的設定,比如安全性檢查,訪問統計什麼的。
缺點的話,url不好看吧...最好做一下重寫
<?php
/** * created by phpstorm.
* user: zheng
* date: 2018/7/12
* time: 10:32
*/try
$methodnamearr = explode('_',$methodname);
$method = '';
foreach ($methodnamearr as $key=>$value)else
}//獲取查詢引數
$params = $_get;
$filedir = $classname.'.php';
include_once $filedir;
$classobj = new $classname();
$data = $classobj->$method($params);
exit($data);
}catch (\exception $e)
注意使用的apche或者nginx要支援pathinfo模式。
(其他:對資料庫的封裝使用的是medoo,這個類非常小,就20kb左右,使用起來也很方便。)
通過URL訪問php對應的類中的方法
主要是乙個小專案,沒必要使用框架,就簡單處理了使用乙個檔案類呼叫多個方法,避免重複建立php檔案去實現這些類方法的問題,寫好了還是記錄一下,方便日後繼續使用 pathinfo模式 例如 index.php job get list?a 1 b 2 c 3 通過這個uri可以訪問到 job.php中 ...
drupal如何通過URL查詢對應的程式
drupal的hook menu可以定製module的入口path,但drupal並不是每次訪問都去搜尋所有menu hook,而是會先把path記到資料庫,以後訪問乙個path時,drupal都會搜尋資料庫得到對應的module。所以要找到乙個path是屬於那個module,可以搜尋一下menu ...
PHP中 類的訪問控制
在php中主要通過public protectd private等關鍵字來定義訪問許可權。public 被public修飾的屬性和方法,可以在程式中任何位置被訪問,而且可以被子類繼承。php中,類方法的訪問許可權預設都是public。protected 被protected修飾的屬性和方法,可以在所...