メソッドを非静的として定義し、それを静的として呼び出そうとしています。それは言った...
1. 静的メソッドを呼び出したい場合は、 を使用し::
てメソッドを静的として定義する必要があります。
// Defining a static method in a Foo class.
public static function getAll() { /* code */ }
// Invoking that static method
Foo::getAll();
2.それ以外の場合、インスタンスメソッドを呼び出したい場合は、クラスをインスタンス化する必要があります->
.
// Defining a non-static method in a Foo class.
public function getAll() { /* code */ }
// Invoking that non-static method.
$foo = new Foo();
$foo->getAll();
注: Laravel では、ほとんどすべての Eloquent メソッドがモデルのインスタンスを返すため、以下に示すようにメソッドを連鎖させることができます。
$foos = Foo::all()->take(10)->get();
そのコードでは、 Facade を介してメソッドを静的に呼び出しています。all
その後、他のすべてのメソッドはインスタンス メソッドとして呼び出されます。