Open In App
Related Articles

How to detect Browser Language in PHP?

Improve Article
Save Article
Like Article

We can detect requesting browser’s language using PHP’s super global variable $_SERVER. It is a superglobal variable which holds information about headers, paths, and script locations. It is basically an associative array in PHP which has keys like SERVER_NAME, SERVER_ADDR, REQUEST_METHOD, etc.

We can use HTTP_ACCEPT_LANGUAGE key to get the language of the browser.



We can see an output like:

en-US, en;q=0.9, hi;q=0.8, fr;q=0.7

Example 1:
In order to get the current language of the browser, we can use PHP’s built-in substr function to get the first two letters of the string like-

   echo substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);

After running the above program you’ll see the output as your current browser’s language –


You can test it by changing your browser’s language. If you are on chrome you can go to chrome://settings/languages and choose a different language.

Now run the above program again and you’ll see the output as the newly chosen language.

Example 2: If your website has different pages for different languages, you can use this method in order to redirect to the page according to the user’s browser’s language.

   $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
   // Redirect browser 
   header("Location:" . $lang . "/index.php");    

The above program will redirect to links like
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Last Updated : 17 Feb, 2020
Like Article
Save Article
Similar Reads
Related Tutorials