在PHP类文件中放置include语句

时间:2012-02-05 12:16:00

标签: php class include

在PHP类文件中包含文件最明智的地方是什么?例如,如果其中一个方法需要一个外部类,我应该将该文件包含在该方法中使用的文件中,还是应该在类之前完成?还是在构造函数中?要么?您有什么推荐的吗?优点?缺点?或者它只是一个品味问题?

include_once 'bar.class.php';
class Foo
{
    public static function DoIt()
    {
        new Bar();
    }
}

VS

class Foo
{
    public static function DoIt()
    {
        include_once 'bar.class.php';
        new Bar();
    }
}

5 个答案:

答案 0 :(得分:4)

我更喜欢它,与c / java / c#中#import / import / using的约定相同,因为它会立即让您知道您的班级依赖的其他课程上。

您可能还想查看require_once()而不是include_once(),因为它会因错误而停止,而不是在包含的文件包含错误时发出警告。但当然这取决于你所包含的文件类型以及你认为它的重要程度。

答案 1 :(得分:1)

我会说这取决于。

因此,如果存在相当大的代码库,并且您希望每次将页面请求降至最低时将代码加载到内存中,那么我建议在需要时仅包含其他php文件。

但是,如果始终需要该脚本,则将其包含在脚本的顶部。

这实际上取决于情况和要求。

希望有所帮助。

答案 2 :(得分:1)

这取决于您使用的架构。在开头包含文件是整洁的,但如果该文件打印文本,那么你将无法操纵标题等。

当您使用MVC时,模式控制器应该包含类文件。

答案 3 :(得分:0)

如果您确定需要包含该文件,请在顶部进行操作。如果您需要按需提供文件,您可能需要查看spl_autoload_register()以减轻痛苦。

答案 4 :(得分:0)

在页面顶部包含外部文件总是好的。以后很容易找到它。如果包含的文件非常大,则将其包含在您需要的任何位置。另请参阅require_onceinclude_once的文档。

还有requireinclude。了解它们之间的区别以及使用时的区别。