[eluser]m4rw3r[/eluser]
Well, the speed difference isn't big, so it does not "cost" anything to do it that way (and you also put your methods which interact with the object IN the object itself, which is a huge organizational benefit).
To be honest, I'm still a bit new to OOP and always learning

.
I don't like when OOP just gets purely organizational, without any other benefit or too much speed loss (well, depends).
So I prefer a mix between the CI-style and the OOP style

.
And one thing about accessor methods for object properties: Do NOT use them unless you're going to make some filtering/function calls before assigning them.
This is because you loose speed, flexibility and clutter your classes with unnecessary methods.
(and $rec->someprop = 'somestr' is shorter than $rec->set_someprop('somestr')

).