如何在 Laravel 控制器中设置需求路径?

How to set require path in Laravel controller?

我在 Laravel 项目的默认路径中有一个控制器

/app/Http/Controllers/PaymentController.php

在同一个路径下有一个目录:

/app/Http/Controllers/merchant/

里面有文件。

我试图将此目录中的一个文件包含在控制器中,例如:

require_once './merchant/private/filter/filter.php';

但它不起作用。我做错了什么,或者 Laravel 不允许这样做?

我收到这个错误:

main(): Failed opening required './merchant/private/filter/filter.php' (include_path='.:/usr/share/pear:/usr/share/php')

  1. 不要使用 require_*。 Laravel 使用 composer 的自动加载。因此,您的 class 必须具有适当的名称空间定义,例如

    namespace App\Http\Controller\Merchant\Private\Filter; 
    

    您通过 use 语句

    使用
    use App\Http\Controller\Merchant\Private\Filter\Filter;
    
  2. 类 应该是 UpperCamelCase -> Filter.php 而不是 filter.php