没有找到Laravel 5.5 Trait

abr*_*abr 0 php traits laravel

我无法绕过这个,因为我在另一个项目上有这个并且工作得很好.它目前给我这个错误

Symfony\Component\Debug\Exception\FatalErrorException(E_UNKNOWN)Trait'App\Traits\ResponseTrait'未找到

UserRepository工作正常,特性没有.我已经尝试重命名特征,将其移动到存储库文件夹,chmod到777,我不知道什么是错的.

认识我的HomeController,laravel的默认设置:

<?php
namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Repositories\UserRepository as User;
use App\Traits\ResponseTrait;

class HomeController extends Controller
{
  use ResponseTrait;

  private $user;

  /**
  * Create a new controller instance.
  *
  * @return void
  */
  public function __construct(User $user)
  {
    $this->user = $user;
    $this->middleware('auth');
  }

  /**
  * Show the application dashboard.
  *
  * @return \Illuminate\Http\Response
  */
  public function index()
  {
    //dd($this->user->all()->toArray());
    //You can ignore the self:: part, as it doesn't reach this far.
    self::setData($this->user->all()->toArray());
    return "test";
    return view('home');
  }
}
Run Code Online (Sandbox Code Playgroud)

特点:

<?

namespace App\Traits;

trait ResponseTrait {
  public function setData($array) {

  }
}
Run Code Online (Sandbox Code Playgroud)

特征的路径是/app/Traits/ResponseTrait.php

在我的composer.json中,我已经使用App指令进行了PSR-4自动加载.

"psr-4": {
   "App\\": "app/"
}
Run Code Online (Sandbox Code Playgroud)

Edit1:我尝试过composer dump-autoload,问题仍然存在

Dev*_*von 8

不要使用<?,总是使用<?php.

需要在php.ini中启用短打开标签,因为它们与其他语言冲突,所以不受广泛支持.