UPS.com isn't terrible. http://www.ups.com/
If you use a content delivery network (like Akamai) they are able to tell the location of the user a lot better than you would be able to and you can default the website to that locale. That will give you a good chance of hitting the correct language. It's a bit of an artform and based on your target audience.
A place like Sony or Microsoft has a targeted audience and can be fairly certain that someone visiting from a specific country found that URL via a support document (or a localized search) so there isn't as much emphasis on allowing the user to change their selection.
UPS, on the other hand, delivers around the globe and shipping to a country means that the business will be much more nuanced and the language of communication is based on the person shipping and the person receiving the package.
A good balance is a global social networking site, like Netlog ( http://www.netlog.com) where they use a combination of both smart filtering of the user's location and an easy way to change (via hyper links at the bottom).
As far as books, start with A Practical Guide to Localization which will teach you the basics. My skillset doesn't include in depth PHP, so I'm not even going to try and answer that part.
Happy Coding