function __construct() { parent::__construct(); App::config()->addConfiguration(APP_ROOT . _DS_ . 'config.json'); App::extend('router', new \Cherry\Mvc\Router()); App::extend('server', new \Cherry\Mvc\Server()); }
public function __construct() { $this->setLogTarget([]); parent::__construct(); $this->loadConfig(); App::extend('router', new \Cherry\Mvc\Router()); App::extend('server', new \Cherry\Mvc\Server()); }
function __construct($apppath = null, $argv = null) { if ($argv == null) { if (_IS_CLI) { $argv = $GLOBALS['argv']; // global $argv; } else { $argv = ""; } } parent::__construct(); $this->debug('Spawning application'); $this->setup(); $opts = ''; $lopts = array(); foreach ($this->arguments as $opt) { $opts .= $opt->argument; $lopts[] = $opt->longargument; } // Parse the arguments $parsed = getopt($opts, $lopts); foreach ($this->arguments as $optkey => $opt) { if (array_key_exists($optkey, $parsed)) { $optval = $parsed[$optkey]; if ($opt->type == 'multi') { if (!is_array($opt->value)) { $opt->value = array(); } $opt->value[] = $optval; } elseif ($opt->type == 'string') { $opt->value = $optval; } else { $opt->value = true; } if ($opt->bind) { if (is_array($opt->bind)) { list($obj, $prop) = $opt->bind; } else { $obj = $this; $prop = $opt->bind; } $obj->{$prop} = $opt->value; } } } //var_dump($this->arguments); //var_dump($parsed); // Remove all parsed values to end up with just the parameters $cparam = array(); // Start at 1 to skip command name. for ($i = 1; $i < count($argv); $i++) { $arg = $argv[$i]; $copt = null; if ($arg == "--") { $cparam = array_merge($cparam, array_slice($argv, $i + 1)); break; } if ($arg[0] == '-') { // Look up arguments if ($arg[1] == '-') { // Long argument foreach ($this->arguments as $opt) { if ($arg == '--' . $opt->longargument) { printf("Matched %s...\n", $arg); $copt = $opt; break; } } } else { // Short arguments foreach ($this->arguments as $opt) { if ($arg[1] == $opt->argument[0]) { $copt = $opt; break; } } } } if ($copt) { if (strlen($copt->argument) > 1) { $i++; // Skip the next item } } else { $cparam[] = $arg; } } $this->parameters = $cparam; }