Я использую PHP-расширение gettext для перевода своего веб-сайта на разные языки. У меня есть три ссылки, которые меняют язык в зависимости от URL:
$locale = false;
if (isSet($_GET["locale"])){
$locale = $_GET["locale"];
setcookie("locale", $locale, time()+60*60*24*30, "/");
}
if (!$locale && isSet($_COOKIE["locale"])){
$locale = $_COOKIE["locale"];
}
putenv("LC_ALL=$locale");
putenv("LANGUAGE=$locale");
setlocale(LC_ALL, $locale);
bindtextdomain("messages", "./locale");
bind_textdomain_codeset("messages", "UTF-8");
textdomain("messages");
с
<a href="?locale=en">English</a>
и
<a href="?locale=ru">Russian</a>
Я хотел, чтобы URL-адрес был чистым, и чтобы параметр ?lang=en
отсутствовал в URL-адресе. Таким образом, когда пользователь нажимает на лин на products.php
, он останется как есть и не будет отображаться products.php?locale=ru
Как я могу это сделать?