Сегодня делал расчет средней температуры и влажности по дому. У объектов класса Rooms я веду только свойства со значениями разных показателей. Температура, влажность, освещенность и т.д. Отдельно получить время возможности нет. А оно нужно для расчета чтобы не брать во внимания комнаты, данные в которых устарели по какой либо причине.
Время получить не сложно из базы данных:
Код: Выделить всё
$prop_id=getValueIdByName('Livingroom', 'Temperature');
$arr_s = SQLSelectOne("SELECT UNIX_TIMESTAMP(UPDATED) as UPDATED, VALUE FROM pvalues WHERE ID=".$prop_id);
при этом $arr_s[VALUE] будет значение свойства аналогично работе функции gg(), а в $arr_s[UPDATED] будет время изменения этого свойства. Время в формате UNIX. Если нужно в человеческом, то нужно немного изменить SQL запрос. Следует обратить внимание, что запрос идет из таблицы pvalues. Это таблица со значениями разных свойств. Если нужна история свойства, то таблица будет другая.
Мне не раз уже требовалось получать не только значение, но и время свойства. Обращение к базе данных всегда выручает, но если есть штатные функции, то я конечно же предпочитаю использовать их.