2

假设我有一个名为 smallBox.php 的类文件:

<?php
class SmallBox {

    public function boxMethod() {}

}

然后,我使用“require”将 smallBox.php 文件包含到另一个类中:

<?php
class BigBox {

    public function __construct() {

        require 'smallBox.php';
        $box = new SmallBox();
        $box->boxMethod();

    }

}
?>

我是 PHP OOP 和 MVC 的新手,想知道在 BigBox 类中包含 smallBox.php 是否被认为是不好的做法?

4

3 回答 3

4

您应该使用自动加载类而不是手动加载requirePHP 文件。基本上,它是一种基于类名加载适当 PHP 文件的机制。

于 2012-11-28T05:17:12.003 回答
2

使用 required_once 和 include_once。在类声明之前使用包含结构

include_once 'path/to/class/a.php';

class B extends A
{
  public function __construct()
  {
     // your code
  }

}
于 2012-11-28T05:16:34.243 回答
1

这将起作用,但请记住,当您包含或需要其他文件时,这些文件变量将在包含它的范围内运行。我曾经尝试使用“加载器”类来模拟 java 的导入行为,但遇到了这个问题,因为我正在加载的类在该主类的范围之外不可用。查看手册以获得更清晰的信息。

于 2012-11-28T05:10:56.733 回答