Algo q te puede ayudar, es un Articulo llamado
Averiguar el Pais de la IP El cual utiliza una Tabla que contiene rango de IP y su Pais.
Con una funcion, a la cual le entregamos una direccion IP y nos devuelve un array con la informacion del pais (Nombre y Codigos de 2 y 3 Letras). Es el que utilizo en mi
Sitio
Con esto tenemos el Pais de Procedencia, luego tendrias que realizar una funcion, que segun el code del pais, el idioma a mostrar :P
Saludos
----------------------------
Mirando la matriz global $_SERVER , hay un indice que muestra el idioma que envia el Navegador del Usuario.
$_SERVER['HTTP_ACCEPT_LANGUAGE']
Eso si, aveces es es, en , en-us,en;q=0.5, depende del navegador o aveces no esta definido :P