システムのさまざまな部分でオブジェクトが使用されている複数のパブリックプロパティを持つクラスがあります。問題は、クラスのオブジェクトを使用している各場所で、これらのパブリックプロパティの一部のみをロードする必要があることです。これは、プロパティのリスト全体を毎回ロードするのに永遠に時間がかかるためです。
__autoload
呼び出されたときに異なる変数をロードする関数を呼び出すために、または同様の関数を使用できる方法はありますか?
例えば
class Bread {
public
$Ingredients,
$Price,
$Color;
public function magicLoading($var) {
switch($var) {
case "Ingredients" : return loadIngredients();
case "Price" : return loadPrice();
case "Color" : return loadColor();
default : break;
}
}
public function loadIngredients() {
$this->Ingredients = ...
}
}
foreach($Bread->Ingredients as $Ingredient) {
//do stuff here
}