$prevRunPassed
Модератор: immortal
- webms
- Сообщения: 498
- Зарегистрирован: Чт дек 15, 2016 3:13 am
- Благодарил (а): 221 раз
- Поблагодарили: 88 раз
$prevRunPassed
а как использовать вст. функцию $prevRunPassed?
у меня задача, нужно узнать сколько времени прошло с последнего вызова
в мануале нашел $prevRunPassed
у меня задача, нужно узнать сколько времени прошло с последнего вызова
в мануале нашел $prevRunPassed
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1753 раза
- Контактная информация:
Re: $prevRunPassed
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram
- webms
- Сообщения: 498
- Зарегистрирован: Чт дек 15, 2016 3:13 am
- Благодарил (а): 221 раз
- Поблагодарили: 88 раз
Re: $prevRunPassed
https://kb.smartliving.ru/vstroennie-v- ... o-funkcii/
вызываю в методе, по инструкции.. но работать не хочет =(
- webms
- Сообщения: 498
- Зарегистрирован: Чт дек 15, 2016 3:13 am
- Благодарил (а): 221 раз
- Поблагодарили: 88 раз
Re: $prevRunPassed
Код: Выделить всё
/* СТАРЫЙ КОД
if (gg('IN4.pressIN4') == '1') { //нажатие кнопки
if (gg('P4.status') == '1' && gg('IN4.avtostart') == '1')
{
$interval = time() - gg('IN4.TaimerNajatie');
if ($interval >= gg('IN4.setingTimeSTARTventilyatora') * 60)
{
sg('P1.status', 1);
setTimeOut("IN4process", "sg('P1.status',0);", gg('IN4.setingTimeOUTventilyatora') * 60);
}
} else {
$this -> setProperty('TaimerNajatie', time());
}
}
*/
sg('P1.test', $prevRunPassed);
if (gg('IN4.pressIN4') && gg('P4.status') && gg('IN4.avtostart')) {
if ($prevRunPassed >= gg('IN4.setingTimeSTARTventilyatora') * 60) {
sg('P1.status', 1);
setTimeOut("IN4process", "sg('P1.status',0);", gg('IN4.setingTimeOUTventilyatora') * 60);
}
}
//$prevRunPassed -- сколько секунд прошло с последнего вызова
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1753 раза
- Контактная информация:
Re: $prevRunPassed
Дичь какая-то. )) Первый раз такое вижу. В исходниках ядра только одно упоминание про prevRunPassed и то закомментированное.
- Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram
-
- Сообщения: 1553
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: $prevRunPassed
В классе объектов есть такая переменная
if (defined('SETTINGS_DEBUG_HISTORY') && SETTINGS_DEBUG_HISTORY==1) {
$class_object=SQLSelectOne("SELECT NOLOG FROM classes WHERE ID='".$this->class_id."'");
if (!$class_object['NOLOG']) {
$prevLog=SQLSelectOne("SELECT ID, UNIX_TIMESTAMP(ADDED) as UNX FROM history WHERE OBJECT_ID='".$this->id."' AND METHOD_ID='".$method['ID']."' ORDER BY ID DESC LIMIT 1");
if ($prevLog['ID']) {
$prevRun=$prevLog['UNX'];
$prevRunPassed=time()-$prevLog['UNX'];
}
Я так понимаю при установленном SETTINGS_DEBUG_HISTORY и NOLOG=false для данного класса, можно в методе получить $prevRunPassed в качестве переменной
Судя по тому что у меня history пустая, видимо SETTINGS_DEBUG_HISTORY нигде не установлена. Можно попробовать добавить define в config и глянуть - изменится ли что-нибудь
if (defined('SETTINGS_DEBUG_HISTORY') && SETTINGS_DEBUG_HISTORY==1) {
$class_object=SQLSelectOne("SELECT NOLOG FROM classes WHERE ID='".$this->class_id."'");
if (!$class_object['NOLOG']) {
$prevLog=SQLSelectOne("SELECT ID, UNIX_TIMESTAMP(ADDED) as UNX FROM history WHERE OBJECT_ID='".$this->id."' AND METHOD_ID='".$method['ID']."' ORDER BY ID DESC LIMIT 1");
if ($prevLog['ID']) {
$prevRun=$prevLog['UNX'];
$prevRunPassed=time()-$prevLog['UNX'];
}
Я так понимаю при установленном SETTINGS_DEBUG_HISTORY и NOLOG=false для данного класса, можно в методе получить $prevRunPassed в качестве переменной
Судя по тому что у меня history пустая, видимо SETTINGS_DEBUG_HISTORY нигде не установлена. Можно попробовать добавить define в config и глянуть - изменится ли что-нибудь
Последний раз редактировалось fandaymon Ср апр 25, 2018 11:37 pm, всего редактировалось 1 раз.
- Рейтинг: 1.16%
-
- Сообщения: 1553
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: $prevRunPassed
В config.php добавить строчку
Define('SETTINGS_DEBUG_HISTORY', 1);
и наверное перезапустить мажордомо. После чего дождаться отработки каких-нибудь методов и посмотреть появились ли какие-нибудь записи в таблице history.
А сработает или нет - знает только автор
-
- Сообщения: 2079
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 457 раз
Re: $prevRunPassed
а последствия не хуже ли будут для объема бд, чем единичный длинный код?
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
- webms
- Сообщения: 498
- Зарегистрирован: Чт дек 15, 2016 3:13 am
- Благодарил (а): 221 раз
- Поблагодарили: 88 раз
Re: $prevRunPassed
тоже об этом подумал.
решил оставить изначальную версию
fandaymon, спасибо за ответ