getfirstbrowserlang.php 499 B

1234567891011121314151617181920
  1. <?php
  2. function getfirstbrowserlang($default='en') {
  3. if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
  4. $langs=[];
  5. $buff=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
  6. foreach ($buff as $ent) {
  7. $ent=trim($ent);
  8. $ent=explode(';',$ent);
  9. (count($ent)<2) ? $ent[1]=1 : $ent[1]=preg_replace('/^q=/','',$ent[1])+0;
  10. $ent[0]=locale_canonicalize($ent[0]);
  11. $langs[$ent[0]]=$ent[1];
  12. }
  13. arsort($langs);
  14. $blang=array_key_first($langs);
  15. return $blang;
  16. } else {
  17. return $default;
  18. }
  19. }
  20. ?>