lithium\net\http\Router::modifiers()

public static method

Used to get or set an array of named formatter closures, which are used to format route parameters when parsing URLs. For example, the following would match a posts/index url to a PostsController::indexAction() method.

use lithium\util\Inflector;

Router::modifiers([
    'controller' => function($value) {
        return Inflector::camelize($value);
    },
    'action' => function($value) {
        return Inflector::camelize($value) . 'Action';
    }
]);

Note: Because modifiers are copied to Route objects on an individual basis, make sure you append your custom modifiers before connecting new routes.

Parameters

  • array $modifiers

    An array of named formatter closures to append to (or overwrite) the existing list.

Returns

array

Returns the formatters array.

Source

	public static function modifiers(array $modifiers = []) {
		if (!static::$_modifiers) {
			static::$_modifiers = [
				'args' => function($value) {
					return explode('/', $value);
				},
				'controller' => function($value) {
					return Inflector::camelize($value);
				}
			];
		}
		if ($modifiers) {
			static::$_modifiers = array_filter($modifiers + static::$_modifiers);
		}
		return static::$_modifiers;
	}