openlss/lib-router

处理Web调用的路由器,允许运行时动态注册

0.0.8 2013-04-09 05:18 UTC

This package is not auto-updated.

Last update: 2024-09-14 14:26:22 UTC


README

处理Web调用的路由器,允许运行时动态注册

用法

use \LSS\Router;

Router::init();
Router::_get()->setRoot(ROOT);
Router::_get()->setDefault('/ctl/home.php');
Router::_get()->register('client','list'=>'/ctl/client_list.php');
$dest = Router::_get()->route(get('act'),get('do'),get('fire'));
require($dest);

参考

(void) Router::init()

调用构造函数并启动单例

(object) Router::_get()

返回当前实例

(string) Router::setDefault($dest)

设置默认文件以路由。相对于根目录。

(string) Router::setRoot($root)

设置所有路由调用相对的根文件夹。

(object) Router::register($act,$do=array())

  • $act 第一个路由参数
  • $do 二级路由参数的数组
  • “Do”还可以包含“fire”路由调用的数组。路由器是第三级

更深入的示例

Router::_get()->register('client',array(
	 'list'		=>	'/ctl/client_list.php'
	,'edit'		=>	'/ctl/client_edit.php'
	,'create'	=>	'/ctl/client_create.php'
	,'manage'	=>	array( //this is a tiertiary segment
		'contacts'		=>	'/ctl/client_manage_contacts.php'i
		 //set the default when the third segment is missing
		Router::DEF		=>	'/ctl/client_manage.php'	
	)
	//set the default when the second segment is missing
	,Router::DEF	=>	'/ctl/client_list.php'
));

(string) Router::route($act=null,$do=null,$fire=nul)

  • $act 第一个路由段,通常是一个GET变量
  • $do 第二个路由段,通常是一个GET变量
  • $fire 第三个路由段,返回要路由到的控制器,然后应该发送到require()