Hola.
 
Otra opción es utilizar un mismo array para cada idioma, divididos en 2 archivos diferentes y, definido por una variable de sesión php, mostrar uno u otro. 
Un ejemplo puede ser el siguiente: 
Español (es.php) 
 Código PHP:
    <?php
    $lang = array();
    $lang['idioma'] = 'Español';
    
    $lang['menu_inicio'] = 'Inicio';
    $lang['menu_servicios'] = 'Servicios';
    $lang['menu_servicios_instalaciones'] = 'Instalaciones';
    $lang['menu_servicios_plano'] = 'Plano';
?>    
  Inglés (en.php) 
 Código PHP:
    <?php
    $lang = array();
    $lang['idioma'] = 'English';
    
    $lang['menu_inicio'] = 'Home';
    $lang['menu_servicios'] = 'Services';
    $lang['menu_servicios_instalaciones'] = 'Facilities';
    $lang['menu_servicios_plano'] = 'Map';
?>    
  Y lo controlas por una variable de sesión en el principio de cada página de esta manera: 
 Código PHP:
    <?php
    session_start();
    if( !$_SESSION['lang'] ){ $_SESSION['lang'] = 'es'; }
    $root = $_SERVER['DOCUMENT_ROOT'];
    include($root.'/languages/'.$_SESSION['lang'].'.php');
?>    
  Luego, donde vaya el texto correspondiente, utilizas el array <?php echo $lang['menu_inicio']; ?> y, según la variable de sesión se mostrará en un idioma u otro. De esta manera ahorras el uso de una base de datos y, bueno, para gustos. A mi me es más fácil tener los lenguajes en un array divido en 2 archivos. Creo que es más útil.  
Saludos.