Home > Backend Development > PHP Tutorial > How to detect user language in PHP_PHP tutorial

How to detect user language in PHP_PHP tutorial

WBOY
Release: 2016-07-13 09:50:37
Original
951 people have browsed it

PHP’s method of detecting user language

This article describes the example of PHP’s method of detecting user language. Share it with everyone for your reference. The details are as follows:

 ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

function getPreferredLanguage() {

$langs = array();

if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {

// break up string into pieces (languages and q factors)

preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)s*(;s*qs*=s*(1|0.[0-9] ))?/i',$_SERVER['HTTP_ACCEPT_LANGUAGE'], $lang_parse);

if (count($lang_parse[1])) {

// create a list like "en" => 0.8

$langs = array_combine($lang_parse[1], $lang_parse[4]);

// set default to 1 for any without q factor

foreach ($langs as $lang => $val) {

if ($val === '') $langs[$lang] = 1;

}

// sort list based on value

arsort($langs, SORT_NUMERIC);

}

}

//extract most important (first)

foreach ($langs as $lang => $val) { break; }

//if complex language simplify it

if (stristr($lang,"-")) {$tmp = explode("-",$lang); $lang = $tmp[0]; }

return $lang;

}

1

2 3

45 6 7 8 9 10
11
12
13 14 15 16 17 18 19 20 21 22
function getPreferredLanguage() { $langs = array(); if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { // break up string into pieces (languages ​​and q factors) preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)s*(;s*qs*=s*(1|0.[0-9] ))?/i',$_SERVER['HTTP_ACCEPT_LANGUAGE'], $lang_parse); if (count($lang_parse[1])) { // create a list like "en" => 0.8 $langs = array_combine($lang_parse[1], $lang_parse[4]); // set default to 1 for any without q factor foreach ($langs as $lang => $val) { if ($val === '') $langs[$lang] = 1; } // sort list based on value arsort($langs, SORT_NUMERIC); } } //extract most important (first) foreach ($langs as $lang => $val) { break; } //if complex language simplify it if (stristr($lang,"-")) {$tmp = explode("-",$lang); $lang = $tmp[0]; } return $lang; }
I hope this article will be helpful to everyone’s PHP programming design. http://www.bkjia.com/PHPjc/1017142.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1017142.htmlTechArticlePHP method of detecting user language This article describes the method of PHP detecting user language. Share it with everyone for your reference. The details are as follows: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template