You can get/set private variables, and also since the setters/getters are functions, you can do a lot more while setting/getting a variable, ie. check for permissions, set other variables, call other functions, etc.
If you think it's a lot of extra code because you have a lot of variables, you can also create generic set/get functions that will set/get any variable, as long as the variable exists. I don't remember the code for that, but I'm sure you could find it in the PHP docs.