1

我不明白为什么会收到此错误

Fatal error: Class 'ImageJpg' not found

这是我使用的代码

spl_autoload_register(function($class) {
    if(file_exists($class))
    {
        include $class.'.php';
    }
});

$n = new ImageJpg();

文件 ImageJpg.php 与上面的代码在同一个目录中。

这是 ImageJpg.php 的内容

<?php
class ImageJpg
{
    public function __construct()
    {
        echo 'Image from jpg called';
    }
}
4

3 回答 3

2
if(file_exists($class))
{
    include $class.'.php';
}

应该

if(file_exists($class.'.php'))
{
    include $class.'.php';
}
于 2012-06-28T08:25:58.680 回答
0

ImageJpg.php 文件中是否有一个名为 ImageJpg 的类?文件是否存在?试试这个:

spl_autoload_register(function($class) {
    if(file_exists($class.'.php'))
    {
        include $class.'.php';

        if (!class_exists($class))
        {
            die('required class not present');
        }
    }
    else
    {
        die('file not found');
    }
});
于 2012-06-28T08:23:06.757 回答
0

我也遇到了 file_exists 的问题,我调试了大约 2 个小时,即使在我到处搜索以及在网络上搜索之后也没有任何反应。最后这是一个错字:而是userController.php实际userControlller.php文件。再次检查(按此顺序):

  1. 确保您的文件名中没有拼写错误(PHP 或文件系统)
  2. 检查您的路径 -ROOT和/或使用getcwd()
  3. 临时打印/记录您的支票以确保一切匹配
  4. 避免人为错误:)
于 2015-06-10T11:44:30.567 回答