2016-07-06 3 views
0

Ich versuche SublimeLinter-phplint zu verwenden, um meine php-Dateien in Sublime Text 3 zu filtern. Der linter wird ausgeführt, folgt aber nicht den 'use'-Anweisungen, daher versteht er meine Vererbung nicht und wirft mehr Fehler auf. Zum Beispiel, hier ist ein Controller:"use" -Anweisungen, die nicht von phplint analysiert werden

<?php 
namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use App\Http\Controllers\Controller; 

class TestController extends Controller 
{ 
    public function __construct() 
    { 
    $this->middleware('auth'); 
    } 

    public function index(Request $request) 
    { 
    return response()->json([], 200); 
    } 

} 

Der erste Fehler, den ich bekommen ist

ERROR: unknown type `Controller' 

gefolgt von

ERROR: unknown method App\Http\Controllers\TestController::middleware 

die deutlich zeigt, dass PHPLint nicht in der Lage ist, die 'Verwendung' zu verstehen Erklärung. Was sind die Schritte, um dies zu beheben? Ist es ein Konfigurationsproblem oder ist phplint dazu nicht in der Lage? (Ich benutze Laravel 5)

+0

sein Versuchen Sie, die erweitern Controller mit dem Pfad setzen, so dass es Klasse Testcontroller wird erweitert App \ Http \ Controllers \-Controller –

+0

bereits versucht, es funktioniert nicht. Wenn ich das auch in App \ Http \ Controllers \ Controller.php mache, so dass es Illuminate \ Routing \ Controller erweitert, erhalte ich den Fehler "unbekannter Typ Illuminate \ Routing \ Controller". – hilnius

+0

Es ist kein Namespace oder Klassenproblem, sondern ein Typproblem. Das Problem muss im Controller liegen und nicht im Umfang. –

Antwort

0

Sie sollten use App\Http\Controllers\Controller; diese entfernen. Dies könnte zu Problemen führen. Der Code-Controller wird

<?php 
namespace App\Http\Controllers; 

use Illuminate\Http\Request; 

class TestController extends Controller 
{ 
    public function __construct() 
    { 
    $this->middleware('auth'); 
    } 

    public function index(Request $request) 
    { 
    return response()->json([], 200); 
    } 

} 
+0

Warum könnte dies das Problem verursachen? Wenn ich es entferne, kann mein Code nicht wissen, was "Controller" darstellt. – hilnius

Verwandte Themen