function action($controller, $arguments = array(), $secured = False) { $routes = Route::get_routes(); $a = ""; foreach ($routes as $key => $value) { if ($controller == $value) { $k = explode("/", $key); //unset($path[0]); foreach ($k as $k_key => $k_value) { if ($k_value == "" or $k_value == null) { unset($k[$k_key]); } } $k = array_values($k); if (!Route::has_arguments($k)) { if (empty($arguments)) { $a = $key; } } else { if (empty($arguments)) { return "ERROR: la ruta necesita argumentos"; } else { $a = $key; foreach ($arguments as $a_key => $a_value) { $a = str_replace("{" . $a_key . "}", $a_value, $a); } } } } } if (!$secured) { $http = "http://"; } else { $http = "https://"; } $server = $http . $_SERVER['SERVER_NAME'] . ":" . $_SERVER['SERVER_PORT'] . $_SERVER['SCRIPT_NAME']; return $server . $a; }
<?php use Vendors\Route; /* URLs para recibir datos por get usaran los corchetes( {} ) para determinar el nombre con el cual vamos a trabajar y el que se va a recibir de parametro en la funcion del contructor se escribira el nombre sin espacios separando los corchetes y el nombre. */ Route::new_route("/facultades", "FacultadController@index"); Route::new_route("/facultades/create", "FacultadController@create"); Route::new_route("/facultades/eliminar/{id}", "FacultadController@eliminar"); Route::new_route("/facultades/editar/{id}", "FacultadController@editar"); Route::new_route("/facultades/actualizar/{id}", "FacultadController@actualizar"); Route::new_route("/programas", "ProgramaController@index"); Route::new_route("/programas/create", "ProgramaController@create"); Route::new_route("/programas/eliminar/{id}", "ProgramaController@eliminar"); Route::new_route("/programas/editar/{id}", "ProgramaController@editar"); Route::new_route("/programas/actualizar/{id}", "ProgramaController@actualizar"); Route::new_route("/", "HolaController@index");