我在php中遇到问题......我不完全理解整个require()的工作原理。我的理解是,它需要当前类的成员变量,并在需要的文件中使它们成为全局变量。如果是这种情况,那为什么它不接受基类的成员变量并使它们成为全局变量?PHP需要全局范围
baseclass.php:
class BaseClass {
var $user;
}
myclass.php:
class MyClass extends BaseClass {
function doSomething() {
require "page.php"
}
}
page.php文件:
$this->user // <- this is out of scope?
再次想到,我正在消除我的“不完美风格”的评论。虽然人们可能会争辩说,如果你的方法如此之大,你需要将它们放到外部文件中,但是你有一个设计问题......但这与问题无关。 – 2010-08-24 03:02:43
非常有趣,我可以在需求之外做一个print_r对象(成功),但如果我在里面做,我什么也得不到。 – DaveC 2010-08-24 03:03:27
@DaveC a'print_r($ this);'在include中对我很好。你能显示你的包含文件的确切代码吗? – 2010-08-24 03:05:04