Laravel 5.3 class/routes
Laravel 5.3 class/routes
嘿!我的问题是下一个。我开始使用 Laravel 5.3。我如何在 Laravel 中执行 class
:
class Vehicle
{
public $vehicletype;
function invt($vehicletype){
$this->vehicletype=$vehicletype;
}
function outvt(){
return $this->vehicletype;
}
}
我已经有 ajax .post
,路线:
Route::get('/ajax-vehicletype',function(){
$vehicletypevalue=Input::get('vehicletype');
Vehicle::invt($vehicletypevalue);
});
我收到错误:
Non-static method App\Vehicle::invt() should not be called statically, assuming $this from incompatible context
谢谢。
您可以定义控制器,然后在该控制器内定义函数,并将其传递到您的路由参数中。
class Vehicle extends Controller{
public $vehicletype;
function invt($vehicletype){
$this->vehicletype=$vehicletype;
}
function outvt(){
...........
}
}
在您的路线文件中,您可以将路线定义为
Route::get('/ajax-vehicletype/{vehicletype}','Vehicle@invt');
你需要先学习基础PHP。
您遇到的问题是因为您正在静态调用非静态方法,正如错误中所述。快速解决方法是将 invt
方法定义为静态方法:http://php.net/manual/en/language.oop5.static.php
嘿!我的问题是下一个。我开始使用 Laravel 5.3。我如何在 Laravel 中执行 class
:
class Vehicle
{
public $vehicletype;
function invt($vehicletype){
$this->vehicletype=$vehicletype;
}
function outvt(){
return $this->vehicletype;
}
}
我已经有 ajax .post
,路线:
Route::get('/ajax-vehicletype',function(){
$vehicletypevalue=Input::get('vehicletype');
Vehicle::invt($vehicletypevalue);
});
我收到错误:
Non-static method App\Vehicle::invt() should not be called statically, assuming $this from incompatible context
谢谢。
您可以定义控制器,然后在该控制器内定义函数,并将其传递到您的路由参数中。
class Vehicle extends Controller{
public $vehicletype;
function invt($vehicletype){
$this->vehicletype=$vehicletype;
}
function outvt(){
...........
}
}
在您的路线文件中,您可以将路线定义为
Route::get('/ajax-vehicletype/{vehicletype}','Vehicle@invt');
你需要先学习基础PHP。
您遇到的问题是因为您正在静态调用非静态方法,正如错误中所述。快速解决方法是将 invt
方法定义为静态方法:http://php.net/manual/en/language.oop5.static.php