【发布时间】:2019-05-17 22:38:13
【问题描述】:
我正在使用PHP 7.3.5,我有两个文件,类Foo(),位于目录./db/models 和我的main.php,位于项目的根目录中。
<?php
use Goutte\Client;
class Foo
{
function getHello()
{
echo "Hello world!<br>";
}
}
我的main.php 文件如下所示:
<?php
include("./db/models/Foo.php");
$foo = new Foo;
$foo->getHello();
但是,我收到以下错误:
PHP 致命错误:未捕获的错误:在 C:\Users\Desktop\Code\test-project\main.php:5 中找不到类“Foo”
任何建议我做错了什么?
【问题讨论】:
-
包含是否会引发任何警告?替换为 require 看看是否出现致命错误
-
我不明白为什么这会失败。那是您拥有的确切代码吗?
Foo.php-file 中没有命名空间声明? -
@MagnusEriksson ^^ pos 404 错误(在引擎盖下)包括我的预感
-
包含文件时,最好使用
__DIR__获取您所在文件的绝对路径。如果只使用include 'db/...';,它将从最顶部加载相对文件文件(通常是 index.php 文件)。查看this answer 更详细地解释它。 -
我还建议您确保在开发时使用
error_reporting(E_ALL);,以便确保您也看到所有警告。错误报告级别也可以在您的 php.ini 文件中设置。
标签: php