When I see getter/setter alarm bells go off and red flags start waving. If you are using getters/setters you are breaking encapsulation.
The WHAT now?!? How is a technique that leverages the protections of encapsulation breaking it?!? that's a new idea to me.
Or are you only thinking strict encapsulation, and not data verification/access restriction? As in you don't use private and getters to create scoped read-only? (aka the data access level "parked" that PHP strangely lacks?)
Set validation, construction, and locking are all different "levels" of encapsulation; there's more to it than 100% private.
-- edit -- though I may have a different viewpoint on that coming from those years programming Ada. Seriously, can you explain in more detail why you think that way?