簡體   English   中英

在類中包含類是不好的做法嗎?

[英]Is it bad practice to include classes within classes?

假設我有一個名為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是否被認為是不好的做法?

您應該使用自動加載類 ,而不是手動require PHP文件。 基本上,這是一種基於類名稱加載適當的PHP文件的機制。

使用required_once和include_once。 在類聲明之前使用include結構

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

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

}

可以,但是請記住,當您包含或需要其他文件時,這些文件變量將在其包含范圍內運行。 我曾經嘗試使用“loader”類來模擬javas導入行為,但遇到了這個問題,因為我加載的類在主類的范圍之外是不可用的。 查看手冊以獲得更清晰的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM