Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
urlencode
(PHP 3, PHP 4, PHP 5)
urlencode - URL-кодирует строку.
Описание
string urlencode (string str)
Возвращает строку, в которой все не алфавитно-числовые символы (кроме -_.) заменены на знак процентов (%) с последующими двумя 16-ричными цифрами и пробелами, кодированными как знаки плюс (+). Она кодируется тем же способом, что и post данные WWW-формы, то есть как в типе носителя application/x-www-form-urlencoded. Это отличается от RFC1738-кодирования (см. rawurlencode()) тем, что, по историческим соображениям, пробелы кодируются как плюсы (+). Эта функция удобна при кодировании строки для использования в части запроса URL для передачи переменных на следующую страницу:
Проверить работу функции urldecode:
Пример 1. urlencode()
echo '<a href="/php/function/mycgi?foo='. urlencode($userinput). '"></a>';
Примечание: будьте внимательны с переменными, которые могут совпасть с элементами HTML. Мнемоники вроде &, © и £ разбираются браузером и используется реальная мнемоника, а не желаемое имя переменной. PHP поддерживает изменение сепаратора аргументов на рекомендуемый W3C символ точка с запятой вместо .ini-директивы arg_separator. К сожалению, большинство пользовательских агентов не отправляют данные формы в формате с разделением точкой с запятой. Более переносимый способ - использовать & вместо & в качестве сепаратора. Вам не надо для этого изменять arg_separator РНР. Оставьте его как &, но просто кодируйте ваши URLs с помощью htmlentities()(urlencode($data)).
Пример 2. urlencode/htmlentities()
echo '<a href="/php/function/mycgi?foo='. htmlentities(urlencode($userinput)). '"></a>';
Смотрите также urldecode(), htmlentities(), rawurldecode(), rawurlencode().
Все функции urlОписание на ru2.php.net
Описание на php.ru