Собственно, subject.
Нужен сценарий с циклом по объектам класса с проверкой некоторых свойств и выполнением действий в зависимости от значения. Может уже есть какие-то встроенные функции? Или нужно писать SQLSelect'ы к objects,pvalues?
Андрей
[Сценарий] Как "красиво" организовать перебор объектов класса?
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Как "красиво" организовать перебор объектов класса?
Во-во. У меня уже 20 объектов с 20 (примерно) свойствами каждый. Проверки выливаются в километровые листинги скриптов с одними и теми же действиями для каждого объекта и каждого свойства.
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Как "красиво" организовать перебор объектов класса?
Есть встроенная функция getObjectsByClass("className"), которая возвращает массив имён объектов определённого класса.
$objects=getObjectsByClass("className");
$total=count($objects);
for ($i=0;$i<$total;$i++) {
$data=getGlobal($objects[$i]['TITLE'].'.propertyName');
}
вот как-то так можно попробовать.
$objects=getObjectsByClass("className");
$total=count($objects);
for ($i=0;$i<$total;$i++) {
$data=getGlobal($objects[$i]['TITLE'].'.propertyName');
}
вот как-то так можно попробовать.
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
Re: Как "красиво" организовать перебор объектов класса?
Отлично, спасибо.sergejey писал(а):Есть встроенная функция getObjectsByClass("className"), которая возвращает массив имён объектов определённого класса.
Код: Выделить всё
$objects=getObjectsByClass("MobilePhone");
$total=count($objects);
for ($i=0;$i<$total;$i++) {
$balance=getGlobal($objects[$i]['TITLE'].'.balance');
$monitor=getGlobal($objects[$i]['TITLE'].'.monitor');
$name=getGlobal($objects[$i]['TITLE'].'.name');
if (($balance<50)and($monitor))
{
say("Баланс мобильного телефона \"".$name."\" меньше 50 рублей (".$balance.")");
}
}
Андрей
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза