【问题标题】:PHP Class not found even though file exists即使文件存在,也找不到 PHP 类
【发布时间】:2015-10-26 01:27:35
【问题描述】:

我对此进行了研究并发现了其他问题 (PHP class not found but it's included),但他们没有回答这个愚蠢的简单问题!

这是错误:Class 'Functions' not found in /public_html/sites/sitename/index.php

我的文件夹结构是这样的:

public_html/assests/php/functions.php //class

我require_once这个文件来自这里:public_html/sites/sitename/index.php

我已经检查了file_exists,当然它确实如此,否则require_once 会失败。怎么回事?!

这是我的代码(以防我错过了一些非常愚蠢的东西......)

    require_once('../../assets/php/functions.php'); 

    if( file_exists('../../assets/php/functions.php') ){
        error_log('Of course it exists!');
    }
    else{
        error_log('Oh dear...');
    }

    $fn = new Functions();

functions.php 的内容(为简洁而编辑):

class Functions{    

    public function functions(){
        //constructor
    }

    //pretty print
    public function pp($str){
        return '<pre class="pre-show prettyprint">'.htmlentities($str).'</pre>';
    }

}

【问题讨论】:

  • 你能提供一些代码吗?
  • 您遇到什么错误?
  • @CodeGodie 这不是文件路径问题,该文件存在于我调用它的位置。
  • 这应该可以。它在本地为我工作。也许您没有显示所有代码。是否有任何文件或配置可能不同?
  • 你运行这个会得到什么:var_dump(file_get_contents('../../assets/php/functions.php'));

标签: php class require file-exists


【解决方案1】:

你有一个拼写错误,在“资产”中有一个额外的s:

My folder structure is like this:

public_html/assests/php/functions.php //class

确保您的文件名是 "assets" 并确保您的 require 匹配:

require_once('../../assets/php/functions.php');

【讨论】:

    猜你喜欢
    • 2015-04-13
    • 1970-01-01
    • 2019-11-10
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多