Php 文件\u exists()在未启用安全\u模式的情况下失败
如果我删除Php 文件\u exists()在未启用安全\u模式的情况下失败,php,Php,如果我删除文件\u存在,脚本就会工作,但文件\u存在无论如何都返回false 这可能是什么原因造成的 此外,我还收到一条错误消息:未捕获异常“exception”,消息为“无法加载类:模板”。是因为模板类是静态的吗 您的代码有两个错误 没有意义和合理的系统错误消息,您只是看到了无用的和泛化的错误消息,这对您没有帮助 您可以使用try catch来回显消息。这是大错特错 因此,只需去掉代码中的所有try-catch块,然后再次运行即可。 如果您不打算处理错误,请不要使用try..catch 而不是
文件\u存在
,脚本就会工作,但文件\u存在
无论如何都返回false
这可能是什么原因造成的
此外,我还收到一条错误消息:
未捕获异常“exception”,消息为“无法加载类:模板”
。是因为模板类是静态的吗 您的代码有两个错误
try catch
来回显消息。这是大错特错李>
因此,只需去掉代码中的所有try-catch块,然后再次运行即可。如果您不打算处理错误,请不要使用
try..catch
而不是将错误报告设置为能够看到错误消息
spl_autoload_register(function ($className)
{
if (file_exists($className . '.php'))
{
require_once($className . '.php');
}
else
{
throw new Exception('Could not load class: ' . $className);
}
});
//Load models and save them in variable instances
try
{
$this->database = new Database (
$config['DB']['HOST_IP'],
$config['DB']['DATABASE_NAME'],
$config['DB']['USERNAME'],
$config['DB']['PASSWORD']
);
//Set the initial language for our template model.
Template::setLanguage();
}
catch (Exception $e)
{
echo $e->getMessage();
}
问题是我的PHP文件有两个扩展名。(例如index.php.php)遗憾的是,windows环境没有配置,所以我很难找到问题。
file\u exists()
搜索实际的文件系统路径,而不是include\u path
。那么,您是否传递了一个可以在文件系统上访问的路径,比如当前脚本的相对路径?如果是这种情况,那么有几个例子可以将其包装为搜索包含路径
错误报告在开发环境中已经设置为相同。一次失败不值得例外吗?如果你能告诉我正确的方法,我将不胜感激。你收到我昨天发给你的电子邮件了吗?
error_reporting(E_ALL);
ini_set('display_errors',1);