Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проверка объекта на пустоту
Форумы портала PHP.SU » » Объектно-ориентированное программирование » Проверка объекта на пустоту

Страниц (1): [1]
 

1. Telnet - 11 Июля, 2015 - 13:25:22 - перейти к сообщению
Друзья всем привет.
Подскажите как проверить объект на содержание в нем хоть 1 свойства
что так писать
PHP:
скопировать код в буфер обмена
  1.  
  2. $messages = new stdClass();
  3. var_dump(empty($messages));
  4.  

что так
PHP:
скопировать код в буфер обмена
  1.  
  2. $messages = new stdClass();
  3. $messages->qwe = 1;
  4. var_dump(empty($messages));
  5.  

результат один и тот же bool(false)
т.е не отражается каким либо образом пустой объект или нет.
Подскажите как будет правильно проверить?
2. teddy - 11 Июля, 2015 - 14:06:19 - перейти к сообщению
Можно конвертировать stdclass в массив и проверить его на пустоту,
PHP:
скопировать код в буфер обмена
  1. $messages = (array)$messages;
  2. $messages = get_object_vars($messages);

В конечном счете оба варианта идентичны.

 

Powered by ExBB FM 1.0 RC1