Как вы перебираете свойства текущего класса (не унаследованные от родительского или абстрактного класса)?

Я знаю, что PHP5 позволит вам перебирать свойства класса. Однако, если класс расширяет другой класс, он будет также включать все те свойства, которые объявлены в родительском классе. Это нормально и все, нареканий нет.

Однако я всегда понимал SELF как указатель на текущий класс, в то время как $ this также указывает на текущий объект (включая вещи, унаследованные от родителя)

Есть ли способ я могу перебрать ТОЛЬКО через свойства текущего класса. Причина, по которой я спрашиваю это ... Я использую CI и перебираю $, это включает в себя тонны родительских свойств, которые мне не нужны.

<?php

class parent 
{
   public $s_parent = "Parent sez hi!";
   public $i_lucky_number = 6;
}

class child extends parent
{
   public $s_child = "Child sez hi!";
   public $s_foobar = "What What!!";
   public $i_lucky_number = 7;

   public iterate()
   {
      foreach ($this as $s_key => $m_val)
      {
          echo "$s_key => $m_val<br />\n";
      }
   }

}

$o_child = new child();
$o_child->iterate()

Выход

s_parent => Parent sez hi! 
s_child => Child sez hi! 
s_foobar => What What!!
i_lucky_number => 7

Я не хочу видеть "s_parent => Parent Sez Привет!"

Я просто хочу перебрать свойства текущего класса. Не те, которые унаследованы в другом месте.

Заранее спасибо.