[PHP] ci框架URL解析过程简化 →→→→→进入此内容的聊天室

来自 , 2021-03-18, 写在 PHP, 查看 150 次.
URL http://www.code666.cn/view/e25cfa90
  1. function detect_uri() {
  2.        
  3.         // $_SERVER['REQUEST_URI']: 访问此页面所需的URI
  4.         // $_SERVER["SCRIPT_NAME"]: 当前脚本的路径
  5.         if ( ! isset($_SERVER['REQUEST_URI']) OR ! isset($_SERVER['SCRIPT_NAME'])) {
  6.                 return '';
  7.         }
  8.  
  9.         $uri = $_SERVER['REQUEST_URI'];
  10.         if (strpos($uri, $_SERVER['SCRIPT_NAME']) === 0) {
  11.                 //去掉共同部分,取得对路由有用的部分。
  12.                 $uri = substr($uri, strlen($_SERVER['SCRIPT_NAME']));
  13.         }
  14.        
  15.         //任何路由信息的传递,可以直接返回
  16.         if ($uri == '/' || empty($uri)) {
  17.                 return '/';
  18.         }
  19.        
  20.         // 如果 strpos($uri, $_SERVER['SCRIPT_NAME']) === 0和elseif都无法匹配的时候,
  21.         // 返回这个url的path部分。
  22.         $uri = parse_url($uri, PHP_URL_PATH);
  23.  
  24.         // 将路径中的 '//' 或 '../' 等进行清理
  25.         return str_replace(array('//', '../'), '/', trim($uri, '/'));
  26. }
  27.  

回复 "ci框架URL解析过程简化"

这儿你可以回复上面这条便签

captcha