gpt4 book ai didi

php - ErrorException (E_ERROR) 类 'app\MyLib\MyClass' 未找到 - 类似的类工作正常

转载 作者:行者123 更新时间:2023-12-01 20:23:04 24 4
gpt4 key购买 nike

我正在创建一个网络应用程序。我对 Laravel 比较陌生,并且仍在学习中。无论如何,这是我的问题:

我正在尝试将自定义类包含到我的项目中。我设法包含一个类 - 管理员,并尝试对另一个类 - 教授做同样的事情,但尽管第一个类工作正常,但另一个类却不能。

  1. 我在应用程序文件夹、子文件夹 Biblioteka 中创建了名为 Administrator 和 Profesor 的文件。

  2. 在我放入的每个文件中:

    namespace app\Biblioteka;
  3. 在composer.json 中我进行了以下更改:

    "autoload": {
    "psr-4": {
    "App\\": "app/"
    },
    "classmap": [
    "database/seeds",
    "database/factories",
    "app/Biblioteka/Administrator",
    "app/Biblioteka/Profesor"
    ],
    "files": ["app/Biblioteka/Administrator.php",
    "app/Biblioteka/Profesor.php"]

    },

  4. 之后我运行:

    php artisan route:clear
    php artisan cashe:clear
    composer dump-autoload

并收到以下消息:

    [RuntimeException]
Could not scan for classes inside "app/Biblioteka/Administrator"
which does not appear to be a file nor a folder
dump-autoload [--no-scripts][-o|--optimize][-a|--classmap-
authoritative][--apcu][--no-dev]
  • 我包括:

    use app\Biblioteka\Administrator;
    use app\Biblioteka\Profesor;
  • 在使用提到的类的文件中。

    应用程序适用于类(class)管理员,但不适用于类(class)教授。

    首先创建了类(class)管理员。当一切开始正常工作后,我以与管理员相同的方式创建了教授类。它在调用类的构造函数的行报告错误。我不明白为什么第二个类不能正常工作。

    感谢任何能帮我解决这个问题的人:)

    最佳答案

    如果您将自定义类放入 app 目录中,则无需添加到 classmapfiles block 。删除这些行,然后只需在 PHP 文件中使用 App/Biblioteka/Administrator; 即可。

    这一点:

    "psr-4": {
    "App\\": "app/"
    },

    意味着app目录中的任何内容都可以通过App命名空间引用。因此,对于 app/Foo/Bar.php,该类被引用为 App\Foo\Bar

    关于php - ErrorException (E_ERROR) 类 'app\MyLib\MyClass' 未找到 - 类似的类工作正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54226737/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com