Before I'm going to change my coding style, I'd like to know what the community thinks of it.
in reply to $foo->bar = 14;
One problem with the approach you set forth is that it doesn't survive subclassing.
Personally, I don't favor automatic creation of accessors (or mutators) at runtime. Development-time code generation can be good, but my experiences with delaying generation until runtime have almost always led to a debugging quagmire. I want accessors/mutators reflected directly in the source.