Вариант markin был самый профессиональный по исполнению.
А, я протормозил. Видимо, язык выпарсивается из строчки User Agent.
А можно чуть подробнее - как это технически?
Как я понимаю, если это параметр браузера, то выбор идёт на стороне клиента, через JS? Надёжнее и как-то спокойнее на сервере.