本文整理汇总了PHP中Illuminate\Routing\Route::getMethods方法的典型用法代码示例。如果您正苦于以下问题:PHP Route::getMethods方法的具体用法?PHP Route::getMethods怎么用?PHP Route::getMethods使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Illuminate\Routing\Route
的用法示例。
在下文中一共展示了Route::getMethods方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getRouteInformation
/**
* Get the route information for a given route.
*
* @param string $name
* @param Route $route
* @param Route $current the current route
* @param string $base_path
* @return array
*/
protected function getRouteInformation($name, Route $route, $current, $base_path)
{
$path = $route->getPath();
$uri = head($route->getMethods()) . ' <a href="' . $base_path . $path . '">' . $path . '</a>';
$action = $route->getAction() ?: 'Closure';
return array('current' => $current == $route, 'host' => $route->getHost(), 'uri' => $uri, 'name' => $this->getRouteName($name), 'action' => $action, 'before' => $this->getBeforeFilters($route), 'after' => $this->getAfterFilters($route));
}
示例2: getRouteInformation
/**
* Get the route information for a given route.
*
* @param $route \Illuminate\Routing\Route
* @param $filter string
* @param $namespace string
*
* @return array
*/
protected function getRouteInformation(Route $route, $filter, $namespace)
{
$host = $route->domain();
$methods = $route->getMethods();
$uri = $route->uri();
$name = $route->getName();
$action = $route->getActionName();
$jsroute = array_get($route->getAction(), 'jsroute', null);
if (!empty($namespace)) {
$a = $route->getAction();
if (isset($a['controller'])) {
$action = str_replace($namespace . '\\', '', $action);
}
}
switch ($filter) {
case 'all':
if ($jsroute === false) {
return null;
}
break;
case 'only':
if ($jsroute !== true) {
return null;
}
break;
}
return compact('host', 'methods', 'uri', 'name', 'action');
}
示例3: __construct
public function __construct(Route $route = null)
{
if (!$route || !array_key_exists('controller', $route->getAction())) {
return;
}
// route will be null when not called by documentor
list($controller, $method) = explode('@', $route->getAction()['controller']);
$this->handler = explode('\\', $route->getAction()['controller']);
$this->handler = end($this->handler);
$this->hash = md5($this->handler);
$this->group = $this->getApiGroup($controller, $method);
$this->groupHash = md5($this->group);
$this->sort = $this->getApiSort($controller, $method);
$this->path = $route->uri();
$this->httpMethod = $route->getMethods()[0];
$this->controllerMethod = $method;
$this->controller = $controller;
$this->title = $this->getApiTitle($controller, $method);
$this->description = $this->getApiDescription($controller, $method);
$requestclass = $this->getRequestClass($controller, $method, $this->path, $this->httpMethod);
$this->inputProps = $requestclass ? $requestclass->apiFields() : [];
$this->response = $requestclass ? $requestclass->exampleResponse() : '';
$this->urlIdMap = $this->getUrlIdMap($controller);
$this->responseCodes = $this->getResponseCodes($controller, $method, !!$this->inputProps);
}
示例4: prepareMethods
private function prepareMethods(\Illuminate\Routing\Route $route)
{
$methods = array_diff($route->getMethods(), config('arcanesoft.foundation.routes-viewer.methods.hide', ['HEAD']));
$colors = config('arcanesoft.foundation.routes-viewer.methods.colors', ['GET' => 'success', 'HEAD' => 'default', 'POST' => 'primary', 'PUT' => 'warning', 'PATCH' => 'info', 'DELETE' => 'danger']);
return array_map(function ($method) use($colors) {
return ['name' => $method, 'color' => Arr::get($colors, $method)];
}, $methods);
}
示例5: getPatternFilters
/**
* Get all of the pattern filters matching the route.
*
* @param \Illuminate\Routing\Route $route
* @return array
*/
protected function getPatternFilters($route)
{
$patterns = array();
foreach ($route->getMethods() as $method) {
$inner = $this->router->findPatternFilters($method, $route->getPath());
$patterns = array_merge($patterns, $inner);
}
return $patterns;
}
示例6: hasGetMethod
private function hasGetMethod(Route $route)
{
return in_array('GET', $route->getMethods());
}
示例7: generateStandartRoute
/**
* Generate Route into standart routing in route file
*
* @param string $route_file
* @param Illuminate\Routing\Route $route
* @return void
*/
protected function generateStandartRoute($route_file, Route $route)
{
$route_methods = $route->getMethods();
$method = '';
$uri = $route->getUri();
$extra_param = '';
// first param for Route::match
switch ($route_methods) {
case ['GET', 'HEAD']:
case ['GET']:
$method = 'get';
break;
case ['POST']:
case ['PUT']:
case ['PATCH']:
case ['DELETE']:
$method = strtolower($route_methods[0]);
break;
default:
$method = 'match';
$arr_methods = array_map(function ($val) {
return "'" . strtolower($val) . "'";
}, $route_methods);
$extra_param = '[' . implode(', ', $arr_methods) . ']';
}
$action = $route->getAction();
$action_data = [];
$uses = str_replace($action['namespace'] . "\\", "", $action['uses']);
$action_data['uses'] = "'uses' => '{$uses}'";
if (!empty($action['as'])) {
$action_data['as'] = "'as' => '" . $action['as'] . "'";
}
if (!empty($action['middleware'])) {
$action_data['middleware'] = "'middleware' => '" . implode('|', $action['middleware']) . "'";
}
if (!empty($action['prefix'])) {
$action_data['prefix'] = "'prefix' => '" . $action['prefix'] . "'";
}
// if only action uses in action_data, just use string as action
if (1 == count($action_data) and array_key_exists('uses', $action_data)) {
$code_action_params = "'{$uses}'";
} else {
$code_action_params = "[\n\t" . implode(",\n\t", $action_data) . "\n]";
}
$route_params = [];
if (!empty($extra_param)) {
$route_params[] = $extra_param;
}
$route_params[] = "'{$uri}'";
$route_params[] = $code_action_params;
$route_code = "\nRoute::{$method}(" . implode(', ', $route_params) . ")";
$code_conditions = [];
foreach ($route->conditions as $param => $regex) {
$code_conditions[] = "->where('{$param}', '{$regex}')";
}
$route_code .= implode("\n", $code_conditions) . ";";
if (false == $this->option("no-comment")) {
$code_comment = "\n\n/*" . "\n | -----------------------------------------------------------" . "\n | Route " . (isset($action['as']) ? "'" . $action['as'] . "'" : "") . "\n | -----------------------------------------------------------" . (!empty($route->description) ? "\n | " . str_replace("\n", "\n | ", $route->description) . "\n | " : "") . "\n | generated at: " . date('Y-m-d H:i:s') . "\n |" . "\n */";
$route_code = $code_comment . $route_code;
} else {
$route_code = "\n" . $route_code;
}
file_put_contents($route_file, file_get_contents($route_file) . $route_code);
}
示例8: toArray
/**
* @return array
*/
public function toArray()
{
return array_merge(['name' => $this->route->getName(), 'methods' => $this->route->getMethods(), 'domain' => $this->route->domain(), 'path' => $this->preparePath(), 'action' => $this->route->getAction(), 'wheres' => $this->extractWheres(), 'errors' => $this->errors], $this->getMeta(), $this->options);
}