【发布时间】:2019-06-12 13:56:27
【问题描述】:
我在App 文件夹中创建了一个名为Helper.php 的帮助文件。
app/Helper.php
<?php
namespace App;
use Illuminate\Support\Facades\DB;
class Helper {
public function get_username($user_id)
{
$user = DB::table('users')->where('userid', $user_id)->first();
return (isset($user->username) ? $user->username : '');
}
}
app/Providers/HelperServiceProvider.php
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class HelperServiceProvider extends ServiceProvider
{
public function boot()
{
//
}
public function register()
{
require_once app_path() . 'Helper.php';
}
}
config/app.php
在提供者的数组中...
App\Providers\HelperServiceProvider::class,
aliases 数组内部...
'Helper' => App\Helper::class,
一切正常,但现在出现以下错误。
ErrorException 抛出消息“不应静态调用非静态方法 Helper::get_username($user->id)
但是当我添加 static 关键字以使其正常工作时。静态方法和非静态方法有什么区别?
【问题讨论】:
标签: php laravel laravel-5.7 laravel-controller