如何解决php中要求加载文件的致命错误


how to resolve fatal error from require in php to try to load files?

工作区:本地主机和服务器上的php 5.4(dreamhost共享)

在localhost中,代码运行良好,但在服务器no:来自服务器的消息错误:

警告:require(/home/user/domain/view/../view/config/templateGlobal.php):无法打开流:在第13行的/home/user/domain/vview/TemplateController.php中没有这样的文件或目录致命错误:require():无法打开必需的'/home/user/domain/view//在第13行的/home/user/domain/view/TemplateController.php中查看/config/templateGlobal.php(include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear')

TemplateController.php 中的代码

    class TemplateController {
            private static $paths = array();
            private static $pathsCssJs = array();
            private static $appInfo = array();      
            public function __construct(){
                self::$paths = require __DIR__.'/../config/paths.php';
                self::$pathsCssJs = require __DIR__.'/../view/config/cssJsPaths.php';
                self::$appInfo = require __DIR__.'/../view/config/templateGlobal.php';          
            }
}

cssJsPaths的路径与templateGlobal.php相同,名称正确,我只是不了解发生了什么。

如果我从路径中删除../view/,那么在localhost上也可以正常工作,但在服务器上cssJsPaths.php和templateGlobal.php不工作

经过数小时的搜索和阅读,我发现了一些问题:来自M.Svrcek的评论让我更多地思考路径,而这个问题Require path不适用于cron job?,我从Robus那里得到了一个提示,用来确定php文件的工作位置。我将路径更改为:

self::$pathsCssJs = require __DIR__.'/config/cssJsPaths.php';
self::$appInfo = require __DIR__.'/config/templateGlobal.php';

愚蠢的是,我有两个文件夹"configs"answers"config",只需将文件移动到"config"并删除"configs",现在就可以工作了。。。感谢所有试图帮助我的人。。。有时候太简单了,不敢相信那是错误的。。。