Je suis tout nouveau à Laravel, et je le bricole de différentes façons pour comprendre comment cela fonctionne. L'une des premières choses que j'ai essayées est de créer dynamiquement des routes en créant un fichier de configuration de routes qui est essentiellement un tableau de vues, et de les parcourir pour créer la route. Il ressemble à ceci:Réglage dynamique des routes dans Laravel 5.4
// Loop through the routes
foreach(config("routes.web") as $route){
$GLOBALS["tmp_route"] = $route;
// set the path for home
$path = ($route == "home" ? '/' : $route);
Route::get($path, function() {
return view($GLOBALS["tmp_route"]);
});
// foreach
}
Je sais que la boucle fonctionne bien, mais ce que je reçois est 'Undefined index: tmp_route'
.
Je suis confus quant à pourquoi cela ne fonctionne pas? Des idées? Si je fais écho sur le tmp_route, il échoue la valeur, mais échoue à la vue de retour (
Pourquoi faites-vous de cette façon? "$ GLOBALS" dans une installation de Laravel me fait tiquer incontrôlable - c'est une mauvaise, mauvaise odeur de code et totalement inutile. – ceejayoz
Plus que tout, j'essaie de comprendre comment exécuter Route :: se mettre dans une boucle par curiosité. Je suis ouvert aux suggestions. J'ai commencé avec Laravel il y a environ 2 heures. –
Je n'ai jamais vu de problème nécessitant une boucle pour construire des routes. Plutôt que d'avoir un tableau de routes dans la config, vous devez simplement placer ces routes directement dans le fichier de route. Pour les routes totalement dynamiques et arbitraires, la réponse ci-dessous est bonne, mais dans la plupart des cas, vous allez avoir des routes comme 'file/1' ou' foo/bar'. – ceejayoz