Условные события
Модератор: immortal
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Условные события
Подскажите как ПРАВИЛЬНО обставить ситуацию, когда нужно сделать что то (например запустить свой скрипт), если свойство объекта А = скажем 5, и свойство объекта B = 3. И таких условий и критериев будет много.
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Условные события
просто попробуйте условие
$A=$this->getProperty("объекта А.свойство"); //получить значение свойства объекта А
$B=$this->getProperty("объекта B.свойство"); //получить значение свойства объекта B
Код: Выделить всё
if (свойство объекта А ==5 && свойство объекта B ==3) {
запустить мой скрипт
}
$A=$this->getProperty("объекта А.свойство"); //получить значение свойства объекта А
$B=$this->getProperty("объекта B.свойство"); //получить значение свойства объекта B
Код: Выделить всё
if ($A ==5 && $B ==3) {
запустить мой скрипт
}
- Рейтинг: 1.16%
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Условные события
Да, это я понял, но мне интересно, где именно это написать. Ну например я бы мог предположить, что подобное можно добавить в
Class: Timer Объект: ClockChime Метод: onNewMinute Но тогда условие будет проверяться не часто.
Или же использовать планировщик, и крутить скрипт с проверкой постоянно, скажем каждую секунду. Но это как то выглядит не очень.
Class: Timer Объект: ClockChime Метод: onNewMinute Но тогда условие будет проверяться не часто.
Или же использовать планировщик, и крутить скрипт с проверкой постоянно, скажем каждую секунду. Но это как то выглядит не очень.
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Условные события
Вы можете запускать этот код каждый раз при изменении свойства объекта... будет запускаться с переодичностью изменения значения свойства...
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Условные события
Тоже верно, но я не знаю на будущее, какие еще завтра я напишу действия, и от каких условий они будут зависеть. А если рассмотреть вариант, когда скрипт будет запускаться в зависимости от состояния 10 условий?
Простите за возможно глупые вопросы, просто я еще до конца не понял структуру работы системы.
Простите за возможно глупые вопросы, просто я еще до конца не понял структуру работы системы.
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Условные события
будете 10 условий писать))Bagir писал(а):Тоже верно, но я не знаю на будущее, какие еще завтра я напишу действия, и от каких условий они будут зависеть. А если рассмотреть вариант, когда скрипт будет запускаться в зависимости от состояния 10 условий?
Простите за возможно глупые вопросы, просто я еще до конца не понял структуру работы системы.
пример световых часов:
Код: Выделить всё
if (timeBetween("00:00", "01:00")||timeBetween("12:00", "13:00")){
// красный
$this->callMethod('setColor',array("VALUE"=>'001100000000'));
}elseif (timeBetween("01:00", "02:00")||timeBetween("13:00", "14:00")){
// желтый
$this->callMethod('setColor',array("VALUE"=>'001255237000'));
}elseif (timeBetween("02:00", "03:00")||timeBetween("14:00", "15:00")){
// морская волна
$this->callMethod('setColor',array("VALUE"=>'001000100100'));
}elseif (timeBetween("03:00", "04:00")||timeBetween("15:00", "16:00")){
// красный
$this->callMethod('setColor',array("VALUE"=>'001100000010'));
}elseif (timeBetween("04:00", "05:00")||timeBetween("16:00", "17:00")){
// зелный
$this->callMethod('setColor',array("VALUE"=>'001000100000'));
}elseif (timeBetween("05:00", "06:00")||timeBetween("17:00", "18:00")){
// голубой
$this->callMethod('setColor',array("VALUE"=>'001000100050'));
}elseif (timeBetween("06:00", "07:00")||timeBetween("18:00", "19:00")){
// малиновый
$this->callMethod('setColor',array("VALUE"=>'001100000050'));
}elseif (timeBetween("07:00", "08:00")||timeBetween("19:00", "20:00")){
// светло-зеленый
$this->callMethod('setColor',array("VALUE"=>'001050100000'));
}elseif (timeBetween("08:00", "09:00")||timeBetween("20:00", "21:00")){
// синий
начните с малого, а походу действий разберетесь. Коллективный разум уж точно подскажет))
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Условные события
Пожалуйста тут немножечко по подробней. Истина у меня уже где то рядом )) Уточню задачу: Есть группа различных объектов с их свойствами. Есть группа приемников, допустим пускай это будут объекты реле. Мне нужно задать несколько разных условий, в которых будет указано, какие реле нужно замкнуть, при положительном условии из свойств объектов.Vit писал(а):Вы можете запускать этот код каждый раз при изменении свойства объекта... будет запускаться с переодичностью изменения значения свойства...
Пока что вижу это так: Мне заранее нужно знать, может ли в будущем изменение свойства объекта вызвать необходимость выполнения какого то действия. И у этих свойств задать выполнение скрипта с проверками при их изменении. Этот общий Скрипт выполняет все проверки, и включает нужные реле. (пример с реле образный, т.к. хорошо показывает значение 0 и 1)
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Условные события
брррр.....немного запутывает сообщение)))
давайте попорядку...
Можно сделать класс (например класс реле "keySensors")
в этом классе будет несколько объектов (реле)

при изменении свойства одного из вышеуказанных объектов можно выполнять его метод

в котором выполняются какие то действия именно для этого объекта, а также можно указать вот это

тем самым будет вызываться родительский метод (т.е. метод класса)

в котором можете указывать все что угодно (что включить что выключить и т.д.) либо выполнение скриптов как вы хотите
Это приблизительно имели ввиду, или я что то совсем не понял ничего)
давайте попорядку...
Можно сделать класс (например класс реле "keySensors")
в этом классе будет несколько объектов (реле)

при изменении свойства одного из вышеуказанных объектов можно выполнять его метод

в котором выполняются какие то действия именно для этого объекта, а также можно указать вот это

тем самым будет вызываться родительский метод (т.е. метод класса)

в котором можете указывать все что угодно (что включить что выключить и т.д.) либо выполнение скриптов как вы хотите
Это приблизительно имели ввиду, или я что то совсем не понял ничего)
- Рейтинг: 2.33%
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Условные события
Теперь запутался я )) Похоже это оно и есть. И похоже все намного проще, чем я напридумывал. Буду пробовать и разбираться. Главное въехать в суть, а дальше будет проще и интересней. Спасибо за помощь. Так бы на сайте раздел "песочница" или "лягушатник" завести. С такими вопросами мне бы конечно именно туда надо. В начале трудновато сразу понять что да как.
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Условные события
все начинали с чего-то ....главное желание, остальное придет со временем)
начните реализовывать задуманное, а дальше разберемся совместно....для этого и создан форум))
начните реализовывать задуманное, а дальше разберемся совместно....для этого и создан форум))
- Рейтинг: 1.16%