php 简单的路由器
PHP代码
<?php /** * 路由器【核心文件】 * @author hxm * @version 1.0 * @since 2015.05.04 */ class Router extends Object { public $module = 'indexAction'; //缺省控制器类名 public $action = 'index'; //控制器缺省方法 public $r = true; //是否可以自定义 /** * 分解路由规则 * * @access public * @return array */ public function path() { if ( trim(_URI_,'/') ) { $url = explode('/', _URI_); $this->module = $url[1]; $this->action = isset($url[2]) && !empty($url[2]) ? $url[2] : $this->action; } else { $this->module = $this->action; } if($this->r == false ) { $made = array( 'module' => $this->module, 'action' => $this->action, ); return $this->getObject($made , 'webApp'); } else { return $this->rewrite($this->module, $this->action); } } /** * 重新定义框架重写规则 * * @access private * @param string $mod 控制器名 * @param string $action 请求的操作 * @param string $route 规则文件 * @return array */ private function rewrite( $mod , $action ) { $file = $this->route(); require $file; $url = '/'.trim( _URI_ ,'/').'/'; if( isset($rules) ) { foreach ($rules as $key => $val) { if(preg_match($val[0], $url) ) { $mod = isset($val[1]['mod']) ? $val[1]['mod'] : $mod; $action = isset($val[1]['action']) ? $val[1]['action'] : $action; } foreach ( $val[2] as $key => $value ) { if ( !(strpos($value, '#') === FALSE) ) { preg_match("$value", $url, $result); $param[$key] = isset($result[1]) ? $result[1] : ''; } else { $param[$key] = $value; } } } } $made = array( 'module' => $mod, 'action' => $action, 'param' => $param ); return $this->getObject($made , 'webApp'); } }
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章
如何修復KB5055523無法在Windows 11中安裝?
4 週前
By DDD
如何修復KB5055518無法在Windows 10中安裝?
4 週前
By DDD
<🎜>:種植花園 - 完整的突變指南
3 週前
By DDD
<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
如何修復KB5055612無法在Windows 10中安裝?
3 週前
By DDD

熱工具

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

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

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

Dreamweaver CS6
視覺化網頁開發工具

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