The only logical reason I can think of for a company doing that is because conditions are so bad that they would get a bad rep and no one would want to apply to work for the company anymore if anyone spoke out about it's practices.
Hearing about the sort of stuff that goes on in microsoft it doesn't suprise me really.
You really think that's why? You think it's because they get paid £3.10 an hour and have to clean the toilet themselves?
Do you not think possibly it's because they're just a bit weird and secretive?
Apple employees are paid very well for their sector, and treated extremely well.
The reason they're not allowed to talk is not because of reputation, or maltreatment, it's just that Apple are a bit weird and secretive. They're a technology company, who tend to be secretive, and they also work on a retail model that is COMPLETELY different to EVERYONE ELSE. The staff are discouraged from talking about what goes on behind the scenes because... wait for it... They don't want other companies to find out!
It's the same in mobile phone shops, other big technology companies, all sorts of companies - especially those that deal with technology and the bleeding edge of stuff.