fork(6) download
  1. <?php
  2.  
  3. $acceptLanguage = 'en-US,en;q=0.8,pt-BR;q=0.6,pt;q=0.4';
  4.  
  5. // Primeiro, vamos fazer o parse do Accept-language:
  6.  
  7. $langs = array();
  8. foreach( explode(',', $acceptLanguage) as $lang) {
  9. $lang = explode(';q=', $lang);
  10. $langs[$lang[0]] = count($lang)>1?floatval($lang[1]):1;
  11. }
  12. arsort($langs);
  13.  
  14. // Vamos escolher a linguagem de acordo com o que temos disponivel,
  15. // e aproveitar para mapear os regionalismos:
  16. $ourLanguages = array('pt-BR'=>'pt','pt'=>'pt','es'=>'es');
  17.  
  18. $choice = 'pt'; //Default
  19. foreach($langs as $lang=>$q) {
  20. if( in_array($lang,array_flip($ourLanguages))) {
  21. $choice=$ourLanguages[$lang];
  22. break;
  23. }
  24. }
  25.  
  26. echo 'Linguagem de exibição: '.$choice;
  27. ?>
Success #stdin #stdout 0.02s 52472KB
stdin
Standard input is empty
stdout
Linguagem de exibição: pt