我可以在方法中包含一个类吗?

时间:2010-01-11 19:58:35

标签: php

仅仅因为自动加载的东西不起作用,我想知道PHP是否可以在方法中包含一个类?

示例:

public method doSomething() {
   include ('MyClass.php');
   $foo = MyClass::doAnotherThing();
}

3 个答案:

答案 0 :(得分:3)

是的,这样可以正常工作,并且该课程将在全球范围内提供。如果该文件包含除类之外的其他代码,则该代码将像执行函数一样执行。

答案 1 :(得分:3)

是的,你绝对可以做到。事实上,这正是自动加载所做的事情,因为__autoload()本身就是一个函数,你通常用它来环顾你要加载的类文件。

如果您手动包含类似的类文件,那么您肯定希望使用require_once()而不是include()require(),否则您将获得重复的声明类。

答案 2 :(得分:1)

那么在这种情况下你可能想要requirerequire_once并且可能会测试class_exists,但是你可以这样做。