这个是非常基本的。我正在使用Laravel5.4,我的编辑器是崇高的文本3.在检查应用程序中的代码时,我发现很难确定在use语句中引用了哪个类。
下面说的是一个代码示例:
//File name: ModelNotFoundException.php
<?php
namespace Illuminate\Database\Eloquent;
use RuntimeException;
class ModelNotFoundException extends RuntimeException
{
..
..
..
}
如您所见,它使用RuntimeException。如果我将鼠标指针悬停在这一行上,我会看到弹出窗口,显示此RuntiemExceptoin的所有定义:
Definitions:
vendor/mockery/mockery/library/Mockery/Exception/RuntimeException
vendor/symphony/console/Exception/RuntimeException
....
....
....(and so so)
我的问题是我如何弄清楚这些类中的哪一个实际上被引用到这里。在上面的例子中,我试图在Illuminate \ Database \ Eloquent命名空间中找到一个RuntimeException类,但没有。
谢谢。
如果没有指定路径,php将在你当前的命名空间(在你的情况下是“Illuminate \ Database \ Eloquent”)中查找该类,如果没有找到它,它将在全局命名空间中查找(我相当肯定它在这里做到了订单,请纠正我,如果我错了)。如果找不到类,则会抛出异常。
因此,如果有一个类,您可以在当前命名空间或全局命名空间中找到它。