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();

    }

}
?>

私はPHPOOPと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

それは機能しますが、他のファイルをインクルードまたは必要とする場合、それらのファイル変数は、インクルードされた場所の範囲内で動作することを覚えておいてください。私はかつて「ローダー」クラスを使用してjavasインポート動作をエミュレートしようとしましたが、ロードしていたクラスがそのメインクラスのスコープ外で利用できなかったため、この問題が発生しました。より明確にするためにマニュアルをチェックしてください。

于 2012-11-28T05:10:56.733 に答える