Skip to content

Instantly share code, notes, and snippets.

@oiljin
Forked from dwightwatson/RouteClass.php
Created October 1, 2015 11:25
Show Gist options
  • Save oiljin/2be2ecb9b211eea73e53 to your computer and use it in GitHub Desktop.
Save oiljin/2be2ecb9b211eea73e53 to your computer and use it in GitHub Desktop.
Get the controller name and action in Laravel 4 which can be used as a class in your HTML. This solution makes use of the parseCallback() and currentRouteAction() functions, which are handy if you want to devise your own version.
<?php
public function routeClass()
{
$routeArray = Str::parseCallback(Route::currentRouteAction(), null);
if (last($routeArray) != null) {
// Remove 'controller' from the controller name.
$controller = str_replace('Controller', '', class_basename(head($routeArray)));
// Take out the method from the action.
$action = str_replace(['get', 'post', 'patch', 'put', 'delete'], '', last($routeArray));
return Str::slug($controller . '-' . $action);
}
return 'closure';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment