Laravel不是一个对象

时间:2015-05-31 12:42:01

标签: php laravel

我试图在Laravel中用_construct使用波纹管代码

class SongsController extends Controller {

    private $song;

    public function _construct(Song $song){

        $this->song=$song;
    }
    public function index()
    {
        $songs=$this->song->get();
        return view('songs',compact('songs'));
    }
  }

但排成一行:$songs=$this->song->get();我收到错误消息: 在非对象上调用成员函数get()。 我做错了什么?如果我这样做,它的运行是完美的:

public function index(Song $song)
    {
        $songs=$song->get();
        return view('songs',compact('songs'));
    }

1 个答案:

答案 0 :(得分:0)

正如@Federico在评论中指出的那样,php constructers的正确语法是双下划线__而不是_

public function __construct(Song $song) {
    $this->song=$song;
}