Я хотел бы создать объект в PHP на основе типа, определенного строкой в базе данных MySQL. Таблица базы данных имеет столбцы и демонстрационные данные:
id | type | propertyVal
----+------+-------------
1 | foo | lorum
2 | bar | ipsum
... с типами данных PHP
class ParentClass {...}
class Foo extends ParentClass {private $id, $propertyVal; ...}
class Bar extends ParentClass {private $id, $propertyVal; ...}
//...(more classes)...
Используя только один запрос, я хотел бы ВЫБРАТЬ строку идентификатором и создать объект типа, определяют столбец типа таблицы с другими столбцами в ВЫБРАННОЙ строке, присваиваемой недавно созданному объекту.
Я думал что использование:
mysql_fetch_object()
Но не знайте ни о каком способе динамично создать тип на основе строки. Как каждый делает это?
Но неизвестен способ динамического создания типа на основе строки. Как это сделать?
Вы можете сделать это довольно легко и естественно:
$type = 'myclass';
$instance = new $type;
Если ваш запрос возвращает ассоциативный массив, вы можете назначать свойства, используя аналогичный синтаксис:
// build object
$type = $row['type'];
$instance = new $type;
// remove 'type' so we don't set $instance->type = 'foo' or 'bar'
unset($row['type']);
// assign properties
foreach ($row as $property => $value) {
$instance->$property = $value;
}
Необходимо ограничить частоту кадров до X кадров в секунду (чаще всего используется 60 FPS). Это обычная функция в большинстве мультимедийных рамок, включая SFML. Для SFML следует обратиться к методу Window/RenderWindow SetFramerateLimit (неподписанный предел int) .
-121--4541810- Файл сохраняется во временном каталоге в момент его загрузки, но вы можете использовать $ _ FILES ['uploadedfile'] ['tmp _ name']
для его чтения без необходимости сохранения в постоянном месте.
$instance = new $classname; // i.e. $type in your case
Работает очень хорошо...