Ларавел 5 | Интерфейс «Подсветка \ Контракты \ Маршрутизация \ Промежуточное программное обеспечение» не найден

Я использую Laravel 5.

Я попробую,

 "use Illuminate\Contracts\Routing\Middleware;"

реализовать Middleware как,

class Language implements Middleware {
// Some Functions
}

Я получаю ошибку как,

Interface 'Illuminate\Contracts\Routing\Middleware' not found

На самом деле этот интерфейс отсутствует?

(ИЛИ) Ошибка в определении?

(ИЛИ) Необходимо создать | Скачать?

Спасибо, Q!

2

Решение

Контракт Illuminate \ Contracts \ Routing \ Middleware устарел в версии 5.2, удалите его. И не используйте его в определении класса.

Как это

<?php namespace App\Http\Middleware;

use Closure;
use Illuminate\Routing\Redirector;
use Illuminate\Http\Request;
use Illuminate\Foundation\Applicaion;

class Language{
//..... YOUR CODE
}
4

Другие решения

Я не знаю, действительно ли вы поместили эти двойные кавычки, но вот рабочий пример:

<?php

use Illuminate\Contracts\Routing\Middleware;

class Language implements Middleware {
// Some Functions
}
1

Мои занятия :

Пространство имен App \ Http \ Middleware;

use Closure;

use Illuminate\Routing\Redirector;
use Illuminate\Http\Request;
use Illuminate\Foundation\Application;
use Illuminate\Contracts\Routing\Middleware;

class Language implements Middleware {

public function __construct(Application $app, Redirector $redirector, Request $request) {
$this->app = $app;
$this->redirector = $redirector;
$this->request = $request;
}

/**
* Handle an incoming request.
*
* @param  \Illuminate\Http\Request  $request
* @param  \Closure  $next
* @return mixed
*/
public function handle(Closure $next, $request)
{
// Make sure current locale exists.
$locale = $request->segment(1);

if ( ! array_key_exists($locale, $this->app->config->get('app.locales'))) {
$segments = $request->segments();
$segments[0] = $this->app->config->get('app.fallback_locale');

return $this->redirector->to(implode('/', $segments));
}

$this->app->setLocale($locale);

return $next($request);
}

}

LOC: Приложение / HTTP / Промежуточный / Language.php

0
По вопросам рекламы [email protected]