在 laravel 5 中找不到助手 class

helper class not found in laravel 5

我在应用程序中创建了 Helpers 文件夹,然后我创建了 php 文件 amchelpers.php ---> app/Helpers/amchelpers.php

amchelpers.php代码:

<?php namespace App;

   class AmcHelper {
      static function displayString($string){
          return $string;
      }
  }

然后将这些行添加到 composer.json

"files": [
       "app/Helpers/amchelpers.php"
    ]

然后 运行 这个命令:

composer dump-autoload

然后添加 'Helper' => app_path() 。 '\Helpers\AmcHelper' 到 config/app.php 文件中的别名数组。

在我的控制器中,我有以下操作(此操作在 route.php 中定义):

use Helper;

class UserController extends Controller {
   public function displayMyString(){  
         echo Helper::displayString('Hello');
   }
}

当 运行 页面 http://localhost:8080/easy_marketing/public/displayMyString

我得到了:

ErrorException in compiled.php line 6367: Class 'C:\wamp\www\easy_marketing\app\Helpers\AmcHelper' not found

你写的是 user Helper 而不是 use Helper

实现此目的的另一种方法是

Laravel 5 默认情况下,应用程序目录及其文件夹会自动加载,您需要注意的是添加名称space 后跟目录名称,

所以目录结构是 App --> Helpers

所以你的名字 space 必须包含 App\Helpers

试试下面的代码

<?php namespace App\Helpers;

   class AmcHelper {
      static function displayString($string){
          return $string;
      }
  }

当你在另一个 class 中使用这个 class 时,在名称 space 声明

之后写这个
use App\Helpers\AmcHelper as Helper;


class UserController extends Controller {
   public function displayMyString(){  
         echo Helper::displayString('Hello');
   }
}