Ir para conteúdo
Fórum Script Brasil

zezeufab

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que zezeufab postou

  1. zezeufab

    Problemas com rotas

    Boa tarde. Estou iniciando em php, mas logo de inicio, estou com problema que não consigo resolver. Criar um sistema de rotas da seguinte forma: arquivo de rotas function load($controller,$action) { try { // se controller existe $controllerNamespace = "app\\controllers\\{$controller}"; if (!class_exists($controllerNamespace)) { throw new Exception("O controller {$controller} não existe"); } $controllerInstance = new $controllerNamespace(); if (!method_exists($controllerInstance, $action)) { throw new Exception( "O método {$action} não existe no controller {$controller}" ); } $controllerInstance->$action(); } catch (Exception $e) { echo $e->getMessage(); } } $router=[ "GET" => [ "/" => fn () => load("HomeController", "index"), "/info" => fn () => load("InfoController", "info"), ], "POST" => [ //"/info" => fn () => load("InfoController", "info"), ], ]; se eu colocar no navegador localhost, da tudo certinho, mas se eu colocar localhost/info sempre retorna Not Found The requested URL was not found on this server. arquivo index require 'vendor/autoload.php'; require 'app/rotas.php'; try{ $uri=parse_url($_SERVER["REQUEST_URI"])['path']; $request=$_SERVER['REQUEST_METHOD']; if(!isset($router[$request])) { throw new Exception('A rota não existe0'); } if(!array_key_exists($uri,$router[$request])) { throw new Exception('A rota não existe1'); } $controller=$router[$request][$uri]; $controller(); }catch(Exception $e) { echo "". $e->getMessage() .""; }
×
×
  • Criar Novo...