【发布时间】:2016-09-28 17:03:18
【问题描述】:
对不起,如果这是一个转贴。我已经阅读了同一个问题的答案一个小时,但没有一个答案真的有帮助。
我有一个类似的文件。
<?php
namespace GA\Db;
require '/Users/brickman/work/r2s/library/GA/Db/Base.php';
if ( ! class_exists('Base'))
die('There is no hope!');
——老问题 我已经通过跟踪查找器检查了我的目录,并使用查找器中的文本编辑器读取了它,这绝对是我正在寻找的文件。我也知道我正在访问该文件,因为如果我放置一个不存在的路径,我会收到一个找不到文件的错误。
整个文件的存在是为了定义类 Base。
但是当我检查该类是否存在以及是否可以创建它的实例时,它会告诉我它不存在。
什么给了?
--更新
它现在正在工作。这与我引用课程的方式有关。它想要这个:
<?php
namespace GA\Db;
error_reporting(E_ALL); ini_set('display_errors', 1);
require '/Users/brickman/work/r2s/library/GA/Db/Base.php';
$test = new Base;
现在我收到有关我的包含文件中缺少类的错误,但这无关紧要。谢谢
【问题讨论】:
-
将
include()更改为require()以强制执行致命错误,并确保在脚本顶部有error_reporting(E_ALL); ini_set('display_errors', 1);。始终在开发/测试代码时,确保 PHP 在屏幕上显示错误。 -
并从
Base.php文件中发布一些上下文。它是否与您尝试将其包含到的文件具有相同的namespace? -
我刚刚在我的文件中添加了一个命名空间(复制/粘贴),现在它们共享同一个命名空间。
-
我还将 include 更改为 require 并将该行放在脚本的顶部。非常感谢,很高兴看到额外的错误。但现在并没有错,它只是在呼应“没有希望!”
标签: php namespaces include