Новые книги

Конечно, коммерческий трафик очень крут: вы повышаете свои продажи, нанося точечный удар по пользователям, которые интересуются услугами и товарами вашей тематики. А если мы скажем вам, что вы забрали лишь кусочек от целого торта? Клиенты с коммерческого трафика – не предел ваших возможностей в сети.
Пользовательские истории – это метод описания требований к разрабатываемому продукту. В книге рассказано, как правильно использовать данную технику, чтобы сфокусироваться на поставленной задаче и пожеланиях клиента, а не распыляться на реализации второстепенных функций. Автор книги показывает, как данный подход не только ускоряет и систематизирует разработку, но и улучшает взаимопонимание в команде.

urlencode

Учебник РНР
НазадВперёд

urlencode

(PHP 3, PHP 4)

urlencode - URL-кодирует строку.

Описание

string urlencode (string str)

Возвращает строку, в которой все не алфавитно-числовые символы (кроме -_.) заменены на знак процентов (%) с последующими двумя 16-ричными цифрами и пробелами, кодированными как знаки плюс (+). Она кодируется тем же способом, что и post данные WWW-формы, то есть как в типе носителя application/x-www-form-urlencoded. Это отличается от RFC1738-кодирования (см. rawurlencode()) тем, что, по историческим соображениям, пробелы кодируются как плюсы (+). Эта функция удобна при кодировании строки для использования в части запроса URL для передачи переменных на следующую страницу:

Пример 1. urlencode()
echo '<a href="mycgi?foo=', urlencode($userinput), '">';

Примечание: будьте внимательны с переменными, которые могут совпасть с элементами HTML. Мнемоники вроде &amp, &copy и &pound разбираются браузером и используется реальная мнемоника, а не желаемое имся переменной. Эта склока с W3C, которая тянется годами. Вот ссылка: http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2
PHP поддерживает изменение сепаратора аргументов на рекомендуемый W3C символ точка с запятой вместо .ini-директивы arg_separator. К сожалению, большинство пользовательских агентов не отправляют данные формы в формате с разделением точкой с запятой. Более переносимый способ - использовать &amp; вместо & в качестве сепаратора. Вам не надо для этого изменять arg_separator РНР. Оставьте его как &, но просто кодируйте ваши URLs с помощью htmlentities()(urlencode($data)).

Пример 2. urlencode/htmlentities()
echo '<a href="mycgi?foo=', htmlentities(urlencode($userinput)), '">';

См. также urldecode(), htmlentities(), rawurldecode(), rawurlencode().


Назад Оглавление Вперёд
urldecode ВверхФункции переменных