Я новичок в php и пытаюсь учиться.У меня есть 2 одинаковых класса.Я хочу создать эти объекты, когда я передаю количество и тип объекта.Я читал некоторые о заводском образце.Вот мой заводской класс:
class AssetFactory
{
private static $table;
public static $objects = array();
public static function Create($asset,$count)
{
switch ($asset) {
case "Item":
self::$table = "items";
break;
case "Job":
self::$table = "jobs";
break;
}
$db = new Database();
$rows = $db->query("SELECT * FROM ".self::$table." LIMIT ".$count);
foreach($rows as $row)
{
self::$objects[] = new $asset($row);
}
return self::$objects;
}
}
и когда мне нужно 5 предметов, я использую:
$myItems = AssetFactory::Create('Item',5);
, когда мне нужны рабочие места, я использую:
$myJobs= AssetFactory::Create('Job',5);
предмет и работа - это те же классы.Мой вопрос здесь, как я уже сказал, я пытаюсь учиться.Я делаю это правильно?Правильно ли я понял фабричный образец?Есть хорошие документы по этому поводу (я прочитал все на php.net, получил что-нибудь еще).