php - 找不到 laravel 类(在本地主机上工作但在 DO 服务器上不工作)

标签 php laravel laravel-4 composer-php autoload

这是一个重复问题 - 例如: Laravel 4 migrations - class not found

但是,我已经尝试了所有解决方案(来 self 能找到的每个论坛),但无法解决这个问题。

场景

我在我的本地机器上创建了一个 Laravel 4 项目 - 添加了一些类、 Controller 、 View 等 - 该项目运行良好。

然后我将这个新的 repo 复制到我的 DO 服务器上——使用 composer 等安装依赖项。该项目看起来不错,除了一个页面提示错误:

Class 'company' not found
Symfony\Component\Debug\Exception\FatalErrorException
…/­vendor/­laravel/­framework/­src/­Illuminate/­Database/­Eloquent/­Model.php593

您可以查看此页面here .

我试过了...

我已经更新了 Composer 。我试过“转储自动加载”。我在 composer.json 文件中将“最低稳定性”更改为“稳定”(是的,这是论坛帖子中提议的解决方案)。

其他解决方案必须根据 Composer 版本将“psr-4”或“psr-0”添加到 composer.json 文件中 - 都尝试过。

最让我感到困惑的是,这个页面在我的本地机器上工作得很好,但在 DO 服务器上却不行......如果你们需要更多信息来找出这个答案,请告诉我知道。

感谢任何帮助:)


这是我的 composer.json 文件的样子:

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "require": {
        "laravel/framework": "4.0.*"
    },
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-install-cmd": [
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ]
    },
    "config": {
        "preferred-install": "dist"
    },
    "minimum-stability": "stable"
}

最佳答案

很可能(我很确定)您的本地环境是 Windows,实时服务器是 Linux。因此,如果类 company 类文件在本地服务器上用作 company.php 那么它在本地服务器上与 Company.php 相同,但作为 Linux 遵循区分大小写的规则,因此它将 company.phpCompany.php 作为两个不同的文件读取。

因此,如果您使用了文件名 Company.php,那么请确保您引用的类使用与 Company 相同的大小写,而不是 company (下图),在 Windows cC 中无关紧要,但在 Linux/Unix 中它很重要,因为它区分大小写。

关于php - 找不到 laravel 类(在本地主机上工作但在 DO 服务器上不工作),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22829998/

相关文章:

拉拉维尔 4 : how can I understand how it all works?

php - 将 XML 产品导入 Prestashop

PHP 序列化将控制字符添加到对象属性名称?

php - 将 friend 模型添加到属于许多关系

php - 尝试在测试函数 Laravel 6 中使用配置值

php - 将基本查询转换为 Eloquent orm laravel

php - Laravel - 将资源路由覆盖到不同的路由过滤器组

关于循环的 while 语句的 PHP 问题

javascript - 将 Javascript 代码转换为 php

php - 如何在laravel中添加登录功能?