App]
This commit is contained in:
51
kernel/console/ConsoleApp.php
Executable file
51
kernel/console/ConsoleApp.php
Executable file
@ -0,0 +1,51 @@
|
||||
<?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();
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user