Страница 1 из 1

Проверка наличия свойства

Добавлено: Сб фев 24, 2024 12:26 pm
Jilber
Всем привет. Подскажите, можно ли как-то в коде проверить наличие определённого свойства объекта ? Спасибо.

Re: Проверка наличия свойства

Добавлено: Сб фев 24, 2024 1:54 pm
xor
Jilber писал(а):
Сб фев 24, 2024 12:26 pm
Всем привет. Подскажите, можно ли как-то в коде проверить наличие определённого свойства объекта ? Спасибо.
не понятно. если прочитать несуществующее свойство или ни разу не заполненное - вернёт false. при записи в несуществующее - создаст у объекта такое свойство и подставит значение записываемое.
или по таблицам искать среди свойств объекта и класса по имени.
неизвестна цель хотелки

Re: Проверка наличия свойства

Добавлено: Сб фев 24, 2024 2:08 pm
Jilber
Вроде бы уже разобрался. Сделал так:

Код: Выделить всё

 $PropertyName = gg('Объект.Свойство');
  if ($PropertyName) {
  echo $PropertyName;
  }
  
Пытался сделать без промежуточного свойства $PropertyName, т.е. сразу в условие добавить gg, но либо так не работает, либо где-то накосячил.

Re: Проверка наличия свойства

Добавлено: Сб фев 24, 2024 2:53 pm
xor
Jilber писал(а):
Сб фев 24, 2024 2:08 pm
Вроде бы уже разобрался. Сделал так:

Код: Выделить всё

 $PropertyName = gg('Объект.Свойство');
  if ($PropertyName) {
  echo $PropertyName;
  }
  
Пытался сделать без промежуточного свойства $PropertyName, т.е. сразу в условие добавить gg, но либо так не работает, либо где-то накосячил.
с нулем не прокатит

Код: Выделить всё

sg("tasmota_8BF037.alive", 0);
$PropertyName = gg("tasmota_8BF037.alive");
if ($PropertyName) {
    echo $PropertyName;
} else {
    echo "empty";
}

Re: Проверка наличия свойства

Добавлено: Сб фев 24, 2024 5:47 pm
Logrus
xor писал(а):
Сб фев 24, 2024 1:54 pm
Jilber писал(а):
Сб фев 24, 2024 12:26 pm
Всем привет. Подскажите, можно ли как-то в коде проверить наличие определённого свойства объекта ? Спасибо.
не понятно. если прочитать несуществующее свойство или ни разу не заполненное - вернёт false. при записи в несуществующее - создаст у объекта такое свойство и подставит значение записываемое.
или по таблицам искать среди свойств объекта и класса по имени.
неизвестна цель хотелки
насколько помню, там в один прекрасный момент, несколько лет назад это поломали и местами возвращает не фальш, а 0, что в корне неверно, более того там и с кешем трабла
¯\_(ツ)_/¯
https://github.com/sergejey/majordomo/b ... s.php#L622
п.с. т.е. там еще больше "граблей"