nepster-web
@nepster-web

Как заменить коды UTF8 на символы в URL?

Делаю фильтр выборки, из массива собираю строку для красивого url, типа:
site.ru/filter/date=day;sort=rating

Моя функция:
private function createUrlParam($filter, $param)
	{
        if($param == 'all') 
            unset($this->filterArray[$filter]);
        else
            $this->filterArray[$filter] = $param;
                
        return http_build_query($this->filterArray, '', ';');
    }


При использовании http_build_query генерируется вот такая ссылка:
site.ru/filter/sort%3Ddate%3Bh%3Dnew

То есть символ = заменяет на %3D. Подскажите, пожалуйста, как это исправить?
  • Вопрос задан
  • 2535 просмотров
Пригласить эксперта
Ответы на вопрос 1
shaks
@shaks
$params = array('date'=>'day', 'sort'=>'rating');

echo(http_build_query($params, null, ";")); # => date=day;sort=rating


Функция возвращает строку с не урлкодированным сепаратором, значит проблема не в пхп
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы