SomethingBefore $ variable - 变量之前是什么东西?

时间:2017-01-27 12:21:19

标签: php laravel

我正在开发一些基于OOP PHP的Laravel项目。

经常使用以下内容:

    public function (Request $request){}

变量Request之前的单词$request是什么?我甚至无法阅读它,因为我不知道它是如何被称为的。

2 个答案:

答案 0 :(得分:5)

这些是类型提示 - 您可以read about here in the documenation

  

类型声明允许函数在调用时要求参数具有某种类型。如果给定值的类型不正确,则会生成错误:在PHP 5中,这将是可恢复的致命错误,而PHP 7将引发TypeError异常。

     

要指定类型声明,应在参数名称前添加类型名称。如果参数的默认值设置为NULL,则可以使声明接受NULL值。

在你的情况下(我已经重写了一点......)

public function foo(Request $request){}

这告诉foo()函数$request必须是Request的实例。

答案 1 :(得分:1)

类型提示Request是一个类。通过在变量之前引用它,强制PHP仅将请求Request的实例传递给此方法。

如果您将string或其他类型传递给此方法,则会抛出错误。

我建议你为初学者用PHP在OOP上进行快速谷歌搜索,或者查看Laracasts它有一些很好的资源来开始使用Laravel框架