<p>I'm wondering if its possible to add new class data members at run-time in PHP?</p>

It is. You can add public members are run time with no additional code, and can affect protected/private members using the magical overloading methods __get() / __set(). See
here
for more details.