51 lines
900 B
PHP
Executable File
51 lines
900 B
PHP
Executable File
<?php
|
|
|
|
|
|
namespace kernel\console;
|
|
|
|
|
|
use app\helpers\Debug;
|
|
use kernel\App;
|
|
use Phroute\Phroute\Dispatcher;
|
|
|
|
class ConsoleApp extends App
|
|
{
|
|
public array $argv;
|
|
|
|
public function run(): void
|
|
{
|
|
if(!$rout = $this->getRout()){
|
|
echo "Not found \n";
|
|
exit();
|
|
}
|
|
$dispatcher = new Dispatcher(App::$collector->getData());
|
|
$response = $dispatcher->dispatch('GET', $rout);
|
|
echo $response;
|
|
}
|
|
|
|
public function setArgv($argv): static
|
|
{
|
|
$this->argv = $argv;
|
|
return $this;
|
|
}
|
|
|
|
public function setRouting(): void
|
|
{
|
|
include CONSOLE_DIR . "/routs/cli.php";
|
|
}
|
|
|
|
private function getRout()
|
|
{
|
|
if(isset($this->argv[1])){
|
|
return $this->argv[1];
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static function create(): ConsoleApp
|
|
{
|
|
return new self();
|
|
}
|
|
|
|
|
|
} |