1

抱歉标题不好,我不知道应该放什么标题。

好的,这是我的问题,这段代码也许可以告诉你我现在有什么问题..

文件 : -

utilities.php -> class utilitites
http.php -> class http

http.php文件中

<?php

required_once('utilities.php');

class http extends utilities {
// code right here..
}

?>

utility.php文件中

<?php

required_once('http.php');

class utilities extends http {
// code right here..
}

?>

我在utilities.php文件中遇到错误,据说..

Fatal error: Class 'http' not found in C:\xampp\htdocs\project\utilities.php on line 5

那么我到底有什么问题呢?

4

4 回答 4

2

问题是实用程序继承自 http 继承自实用程序,该实用程序继承自 http 继承自实用程序继承自 http which 。. . 没有办法打破这个循环。您尝试解决的任何问题都有可能具有不需要这种相互继承设置的解决方案。

于 2013-05-29T02:31:55.593 回答
1

使用继承时,您通常希望子类继承父类的属性和方法。在您的示例中,正如其他一些答案所指出的那样,您正在使“http”类和“实用程序”类都尝试充当彼此的父母和孩子。您可能需要重新考虑您究竟想通过继承来完成什么。找出哪个类应该是父类以及子类需要从父类使用哪些属性/方法。哪些属性/方法可能相似但略有不同?

于 2013-05-29T03:32:18.147 回答
1

类层次结构正是这种层次结构。

这意味着它是自上而下且非循环的。

这就像你是你自己的祖父,我什至不认为最糟糕的回到未来同人小说会去那里。

于 2013-05-29T02:38:03.333 回答
1

你试图扩展一个不存在的“http”类,你不能做你想做的事。为什么你应该扩展一个扩展第一个类的类,这是非常无意义的。

难道你不能有第三节课,http 和实用程序都扩展了最后一节课吗?

于 2013-05-29T02:33:06.247 回答