/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/Routing/Route
NameSizeModeActions
DashedRoute.php40470644editdlrm
EntityRoute.php27030644editdlrm
InflectedRoute.php35440644editdlrm
PluginShortRoute.php22770644editdlrm
RedirectRoute.php41170644editdlrm
Route.php304050644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/Routing/Route/InflectedRoute.php (3544B)
'MyController']` */ class InflectedRoute extends Route { /** * Flag for tracking whether the defaults have been inflected. * * Default values need to be inflected so that they match the inflections that match() * will create. * * @var bool */ protected $_inflectedDefaults = false; /** * Parses a string URL into an array. If it matches, it will convert the prefix, controller and * plugin keys to their camelized form. * * @param string $url The URL to parse * @param string $method The HTTP method being matched. * @return array|null An array of request parameters, or null on failure. */ public function parse(string $url, string $method = ''): ?array { $params = parent::parse($url, $method); if (!$params) { return null; } if (!empty($params['controller'])) { $params['controller'] = Inflector::camelize($params['controller']); } if (!empty($params['plugin'])) { if (strpos($params['plugin'], '/') === false) { $params['plugin'] = Inflector::camelize($params['plugin']); } else { [$vendor, $plugin] = explode('/', $params['plugin'], 2); $params['plugin'] = Inflector::camelize($vendor) . '/' . Inflector::camelize($plugin); } } return $params; } /** * Underscores the prefix, controller and plugin params before passing them on to the * parent class * * @param array $url Array of parameters to convert to a string. * @param array $context An array of the current request context. * Contains information such as the current host, scheme, port, and base * directory. * @return string|null Either a string URL for the parameters if they match or null. */ public function match(array $url, array $context = []): ?string { $url = $this->_underscore($url); if (!$this->_inflectedDefaults) { $this->_inflectedDefaults = true; $this->defaults = $this->_underscore($this->defaults); } return parent::match($url, $context); } /** * Helper method for underscoring keys in a URL array. * * @param array $url An array of URL keys. * @return array */ protected function _underscore(array $url): array { if (!empty($url['controller'])) { $url['controller'] = Inflector::underscore($url['controller']); } if (!empty($url['plugin'])) { $url['plugin'] = Inflector::underscore($url['plugin']); } return $url; } }