Нужна помощь
Модератор: immortal
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Нужна помощь
Товарищи программы помогите соединить эти три куска в один
1
$UPS_state=exec("upsc APC@localhost input.voltage");
{
setGlobal("input_voltage", $UPS_state);
break;
};
2
$vol=exec("upsc APC@localhost battery.charge");
{
setGlobal("battery_charge",$vol);
break;
};
3
$UPS_state3=exec("upsc APC@localhost battery.voltage");
{
setGlobal("battery_voltage", $UPS_state3);
break;
};
1
$UPS_state=exec("upsc APC@localhost input.voltage");
{
setGlobal("input_voltage", $UPS_state);
break;
};
2
$vol=exec("upsc APC@localhost battery.charge");
{
setGlobal("battery_charge",$vol);
break;
};
3
$UPS_state3=exec("upsc APC@localhost battery.voltage");
{
setGlobal("battery_voltage", $UPS_state3);
break;
};
-
- Сообщения: 521
- Зарегистрирован: Вс апр 07, 2013 9:30 pm
- Откуда: Moscow
- Благодарил (а): 2 раза
- Поблагодарили: 58 раз
- Контактная информация:
Re: Нужна помощь
что в приведенном куске кода делает break?
Из примера не ясно зачем это объединять.
Из примера не ясно зачем это объединять.
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Нужна помощь
Есть три скрипта для получения данных с упса .LutsenkoDenis писал(а):что в приведенном куске кода делает break?
Из примера не ясно зачем это объединять.
Хотелось в один скрипт что бы было , если в одном скрипте запускаю то получаю только первое значение ,а остальные уже не получаю .
У конекте в примерах нашел пример ,если что то не так помогите плыз исправить .
-
- Сообщения: 521
- Зарегистрирован: Вс апр 07, 2013 9:30 pm
- Откуда: Moscow
- Благодарил (а): 2 раза
- Поблагодарили: 58 раз
- Контактная информация:
Re: Нужна помощь
не пойму...
то, что нужен один скрипт понятно.
не понятно вот что:
При выполнении скрипта нужно получить одно значение или все?
Если одно, то какое-то определённое или первое попавшееся?
Про break спрашивал как раз по тому, что его используют при работе с каким-либо условием.
типа так, а в твоем примере это условие отсутствует и из примера не понятно чего ты хотел.
то, что нужен один скрипт понятно.
не понятно вот что:
При выполнении скрипта нужно получить одно значение или все?
Если одно, то какое-то определённое или первое попавшееся?
Про break спрашивал как раз по тому, что его используют при работе с каким-либо условием.
типа так
Код: Выделить всё
switch(выражение) {
case значение1: команда1; [break;]
case значение2: команда2; [break;]
. . .
case значениеN: командаN; [break;]
[default: команда_по_умолчанию; [break]]
}
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Нужна помощь
upsc APC@localhost input.voltage
upsc APC@localhost battery.charge
upsc APC@localhost battery.voltage
Нужно получить три значения .
Если по отдельности у меня получается ,а как сразу нет.
upsc APC@localhost battery.charge
upsc APC@localhost battery.voltage
Нужно получить три значения .
Если по отдельности у меня получается ,а как сразу нет.
-
- Сообщения: 521
- Зарегистрирован: Вс апр 07, 2013 9:30 pm
- Откуда: Moscow
- Благодарил (а): 2 раза
- Поблагодарили: 58 раз
- Контактная информация:
Re: Нужна помощь
Это не то?
Или ты хочешь значения как-то по другому получить?
Код: Выделить всё
$upsInputVoltage = exec("upsc APC@localhost input.voltage");
$upsBatteryCharge = exec("upsc APC@localhost battery.charge");
$upsBatteryVoltage = exec("upsc APC@localhost battery.voltage");
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Нужна помощь
LutsenkoDenis писал(а):Это не то?Или ты хочешь значения как-то по другому получить?Код: Выделить всё
$upsInputVoltage = exec("upsc APC@localhost input.voltage"); $upsBatteryCharge = exec("upsc APC@localhost battery.charge"); $upsBatteryVoltage = exec("upsc APC@localhost battery.voltage");
Исправил по твоему замечанию .
$UPS_state=exec("upsc APC@localhost input.voltage");
{
setGlobal("input_voltage", $UPS_state);
};
$vol=exec("upsc APC@localhost battery.charge");
{
setGlobal("battery_charge",$vol);
};
$UPS_state3=exec("upsc APC@localhost battery.voltage");
{
setGlobal("battery_voltage", $UPS_state3);
};
и все заработало .
Спасибо!
-
- Сообщения: 521
- Зарегистрирован: Вс апр 07, 2013 9:30 pm
- Откуда: Moscow
- Благодарил (а): 2 раза
- Поблагодарили: 58 раз
- Контактная информация:
Re: Нужна помощь
Смотрю тебе фигурные скобки понравились
Тут можно без них обойтись
p.s. и немного занудства....
Функции и переменные желательно называть так, чтобы при просмотре написанного тобой месяц назад кода, ты мог быстро понять по названию функции что эта функция делает и что сохраняется в переменную.

Тут можно без них обойтись
Код: Выделить всё
$upsInputVoltage = exec("upsc APC@localhost input.voltage");
$upsBatteryCharge = exec("upsc APC@localhost battery.charge");
$upsBatteryVoltage = exec("upsc APC@localhost battery.voltage");
setGlobal("input_voltage", $upsInputVoltage);
setGlobal("battery_charge", $upsBatteryCharge);
setGlobal("battery_voltage", $upsBatteryVoltage);
Функции и переменные желательно называть так, чтобы при просмотре написанного тобой месяц назад кода, ты мог быстро понять по названию функции что эта функция делает и что сохраняется в переменную.
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
-
- Сообщения: 291
- Зарегистрирован: Вт ноя 18, 2014 11:43 pm
- Откуда: Краснодарский край
- Благодарил (а): 32 раза
- Поблагодарили: 68 раз
Re: Нужна помощь
и еще немного занудства....
Перед занесением полученных данных в свойства, лучше делать проверку адекватности полученных значений. А то вдруг там ошибка и мы запишем "0" потому что упс недоступен.
Перед занесением полученных данных в свойства, лучше делать проверку адекватности полученных значений. А то вдруг там ошибка и мы запишем "0" потому что упс недоступен.
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
CONNECT: http://connect.smartliving.ru/profile/311