时间:2021-05-25
本文实例为大家分享了php编写一个简单的路由类,供大家参考,具体内容如下
<?phpnamespace cmhc\Hcrail; class Hcrail{ /** * callback function * @var callable */ protected static $callback; /** * match string or match regexp * @var string */ protected static $match; protected static $routeFound = false; /** * deal with get,post,head,put,delete,options,head * @param $method * @param $arguments * @return */ public static function __callstatic($method, $arguments) { self::$match = str_replace("//", "/", dirname($_SERVER['PHP_SELF']) . '/' . $arguments[0]); self::$callback = $arguments[1]; self::dispatch(); return; } /** * processing ordinary route matches * @param string $requestUri * @return */ public static function normalMatch($requestUri) { if (self::$match == $requestUri) { self::$routeFound = true; call_user_func(self::$callback); } return; } /** * processing regular route matches * @param string $requestUri * @return */ public static function regexpMatch($requestUri) { //处理正则表达式 $regexp = self::$match; preg_match("#$regexp#", $requestUri, $matches); if (!empty($matches)) { self::$routeFound = true; call_user_func(self::$callback, $matches); } return; } /** * dispatch route * @return */ public static function dispatch() { if (self::$routeFound) { return ; } $requestUri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH); $requestMethod = $_SERVER['REQUEST_METHOD']; if (strpos(self::$match, '(') === false) { self::normalMatch($requestUri); } else { self::regexpMatch($requestUri); } } /** * Determining whether the route is found * @return boolean */ public static function isNotFound() { return !self::$routeFound; } }下载地址:https://github.com/cmhc/Hcrail
希望本文所述对大家学习PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
这里运用Smarty模板,更简单本文主要的技术:AJAX,PHP,Smarty,另外自己封装了一个很简单的类类: (function(){function$(
基本路由您的应用程序的绝大多数路由将在app/routes.php文件中定义。Laravel中最简单的路由由一个URI和一个闭包调用组成。基本GET路由复制代码
本文实例讲述了PHP实现的简单路由和类自动加载功能。分享给大家供大家参考,具体如下:项目目录如下入口文件index.php
这个PHP的数据库连接类,应该算是最简单的一个连接类了,也是最好明白的一个连接类.作为开始PHP面向编程之旅的一个开始吧.我看了很多网上流传的MYSQL数据库连
在这一节中,我们就来看看在PHP中如何创建一个类和对象。1.创建类在PHP中,创建一个类和在C#/Java中基本类似,闲话少说,给大家看个最简单的例子:复制代码