run() public method

public run ( $routes = null )
示例#1
0
文件: mPHP.php 项目: baitongda/mPHP
 public function run()
 {
     safe::safeGPC();
     if (router::run()) {
         return;
     }
     $controller = isset($_GET['c']) ? "{$_GET['c']}Controller" : 'indexController';
     $action = isset($_GET['a']) ? "{$_GET['a']}Action" : 'indexAction';
     if (method_exists($controller, $action)) {
         $controller = new $controller();
         call_user_func(array($controller, $action));
     } else {
         self::error('Action不存在!', "c={$controller} a={$action} 未定义!");
         self::_exit();
     }
 }
示例#2
0
 /**
  * 
  * @dataProvider urlProvider
  */
 public function testRun($url, $expected)
 {
     $_SERVER['REQUEST_URI'] = $url;
     router::run();
     $this->expectOutputString($expected);
 }
示例#3
0
 /**
  * @see router::run
  */
 public static function run()
 {
     if (!class_exists('router', FALSE)) {
         include_once 'router.php';
     }
     router::run();
 }
示例#4
0
<?php

/**
 * The local of this file is setted in the config file
 * This file can run route matches or can include another route file
 * For example i can run a route inside my app or inside packages
 */
//Run routing from app without prefix
//init the closure with the prefix fa
//This code is needed and you should not delete or modify
router::run('/app/' . APP_NAME . '/routing.php', '', $router);
//all the routes that run in this file are the routes that will be needed for all apps
//for routes that only are used by one specific app must be declared in the routing file inside the app
//Why this file exists? I think most of the routes are app specific...
//This file exist because the goal is multiapp framework, because of that i think a nice approach would be for example use the same backoffice for all apps
//in this case of the backoffice the routes for the backoffice are inserted in this file
// you cant run routes from multiple apps from one app, this is not permited and only makes the code confuse
// if you need to access stuff from another app then that stuff is aproved to be a package
// in the app i canot access another apps
// in the app i have full access to packages
router::runpackage('moonlight/auth', '', $router);
router::runpackage('moonlight/backoffice', 'bo', $router);