Urlencode расширенная практика применения

UrlEncode — php-функция, которая подготавливает значение для использования его как часть html ссылки, заменяя спец. символы, кириллицу и т.п. на закодированные hex значения. Обычно так подготавливают GET параметры, передаваемые в url:

URLencode и массивы

Ф-ция urlencode работает только со скалярами. Если вам необходимо сформировать GET параметры из набора параметров (массива) или даже массива массивов, то следует воспользоваться более мощной функцией — http_build_query().

Сформируем ссылку из массива параметров и посмотрим, как эти данные вернутся в $_GET.

URLencode и HTML FORM

Если нужно передать массив параметров в составе формы, как часть данных этой формы, то можно поступить двумя способами:

Передача данных через action

Так можно передать данные, только если установлен тип отправки данных — POST.

или

Если выбрать метод GET, то вместо параметров action в GET будут переданы данные самой формы.

Формирование полей формы

Для случая формы мы также можем сформировать набор «скрытых» полей. Никакие специальные функции PHP здесь не понадобятся, все придется делать самим.

У меня получилась вот такая функция для создания набора тегов input :

В качестве первого параметра она принимает массив данных. Второй параметр позволяет указать имя переменной. Функция работает рекурсивно, так что массив может быть многократно вложенным.

Добавим результат её работы в форму:

В случае нашего массива $a, получим следующий html-код:

Urlencode online

Применение urlencode() очень узкое, на практике больше возникает необходимости в использовании http_build_query(). А в случае подготовки форм, так и вообще обе остаются не у дел.

Чтобы полностью закрыть вопросы с urlencode, предлагаю посмотреть как работает функция «вживую»:

Введите данные для обработки PHP URLencode():


Мало букафф? Читайте есчо !

Вариант filemtime для работы с URL

Январь 1, 2018 г.

Может пригодиться, к примеру, для задач кеширования. Мы запросим с сервера только заголовки файла и извлечем из них значение last-modified. Почти готовый вариант я нашел в сети, чуть-чуть изменил для своих задач. Принцип описан ваше. На входе ...

Читать

Считаем полное число строк в запросе MySQL, ограниченного LIMIT

Ноябрь 2, 2012 г.

О полезном операторе - SQL_CALC_FOUND_ROWS. Это конструкция просто незаменима для организации постраничного вывода каких либо данных. Все время забываю синтаксис, приходится каждый раз искать. Решил записать в блоге, чтобы уж не терять :). Во всех ...

Читать

Извлекаем атрибуты из шот/html кода

Апрель 23, 2017 г.

Предлагаю код очень простой функции-парсера атрибутов из кусочков html кода. Основное назначение - разбирать текст short-codes. На входе: html код или shortcode. На выходе: имя тега и набор атрибутов. Если ничего подходящего не найдено - получим ...

Читать

Как пользоваться flock()?

Март 24, 2017 г.

Если вы решаете задачу конкурентного доступа к файлу (или какому то другому ресурсу) в PHP, и решили использовать flock() для этой цели, то вам понадобится верно представлять как работает механизм блокировки. Представим себе, что есть разные программные ...

Читать
 

Комментарии к «Urlencode расширенная практика применения»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: