Загрузка...

Как определяется язык пользователя на PHP?

Если создаваемый вами сайт рассчитан на посетителей с разных стран мира вам обязательно требуется автоматическое определение языка пользователя, в одном из проектов потребовалось решить эту задачу. О том, как определяется язык пользователя на PHP, я и расскажу в данной статье.

Чтобы определить язык пользователя на PHP, надо воспользоваться следующим кодом:

<?php
  preg_match_all('/([a-z]{1,8}(?:-[a-z]{1,8})?)(?:;q=([0-9.]+))?/', strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"]), $matches); // Получаем массив $matches с соответствиями
  $langs = array_combine($matches[1], $matches[2]); // Создаём массив с ключами $matches[1] и значениями $matches[2]
  foreach ($langs as $n => $v)
    $langs[$n] = $v ? $v : 1; // Если нет q, то ставим значение 1
  arsort($langs); // Сортируем по убыванию q
  $default_lang = $langs[0]; // Берём 1-й элемент (он же максимальный по q)
  echo $default_lang; // Выводим язык по умолчанию
?>


В основе лежит константа $_SERVER["HTTP_ACCEPT_LANGUAGE"], которая как раз и содержит сведения о предпочитаемых языках пользователя. Выглядит она примерно так: "ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3". Здесь перечисляются языки и регионы, а также приоритет q. Чем больше q, тем больше пользователь предпочитает данный язык. Если q нет, значит, оно равно 1. Например, у ru-RU нет q, значит, оно равно 1, и данный язык наиболее подходящий.

Получив язык по умолчанию, мы можем сразу же установить его и на сайте, тем самым, выводя контент для пользователя на том языке, который он предпочитает. Таким образом определяется язык пользователя на PHP, что очень пригодится мультиязычным сайтам.

Хотите больше скриптов и новостей? Отблагодари авторов!
Пройди по ссылкам ниже...



    Устанавливаем проверку повторных регистраций по WMIDу пользователя

    Устанавливаем проверку повторных регистраций по WMIDу пользователя
    Как вы уже заметили, в скрпитах SoooFast нет проверки наличия пользователя с введённым Вами WMID при регистрации. Иными словами: если попробовать зарегистрироваться с одним кошельком два раза - то нас скрипт пошлёт - но если с одним WMID'ом - то скрипт

    Ошибка в работе капчи скрипта MFS SeoEdit

    Ошибка в работе капчи скрипта MFS SeoEdit
    Многие пользователи, которые скачивали и установили скрипт MFS SeoEdit, обратились ко мне с таким вопросом как ошибка в работе капчи. По их заявкам я решил опубликовать сегодня статью в которой и расскажу как исправить ошибку с неверным числом

    Плагин автосохранение корзины для VirtueMart 2

    Плагин автосохранение корзины для VirtueMart 2
    Плагин автосохранение корзины для VirtueMart 2. После установки плагина, корзина автоматически сохраняется. То есть, при возвращении пользователя на сайт, он увидит в корзине те товары, которые он положил в корзину при прошлом посещении сайта.

    Узнаем браузера пользователя с помощью PHP

    Узнаем браузера пользователя с помощью PHP
    В этой статье я раскажу как определить браузер пользователя с помощью PHP. Начнём с того что Браузер это клиент, а любой сервер имеет полное право знать информацию о клиенте, который к нему подключается.

    Внешние ссылки как правильно сделать ссылку на сайт

    Внешние ссылки как правильно сделать ссылку на сайт
    В этой статье я поделюсь с вами как грамотно сделать внешние ссылки! На что это повлияет. Куда их стоим размещать и в каком количестве и куда не стоит ляпать. Начнём с того что ссылки на ваш сайт должны быть как можно разнообразнее. Не надо повторять


Просмотров: 2 099
Добавлено: 22-07-2013, 17:48
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх
[X]
Добро пожаловать на сайт!

Войти | Зарегистрироваться