调用失败的函数:'should not be called statically' in laravel 5.4

Calling the failed function: 'should not be called statically' in laravel 5.4

我用的是版本laravel 5.4

Helpers/Helper.php

public function test()
{
  return 'success';
}

在控制器中

use App\Helpers\Helper;

public function index()
{
  $val = Helper::test();
  dd($val);
}

错误:不应静态调用 Helper::test()

我调用了helper里面的函数来使用。但是得到了如上的错误。请告诉我如何获得 helper 中的函数。谢谢

要静态调用 test 函数,您必须将其定义为静态函数,如下所示。否则,你将不得不做类似 (new Helper())->test(); 的事情,这可能不是你想要为不需要访问 $this 的简单辅助函数做的事情。您可以在 PHP 手册 https://www.php.net/manual/en/language.oop5.static.php

中阅读更多关于静态方法的使用
namespace App\Helpers;

class Helper
{
    public static function test()
    {
        return 'success';
    }
}