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():


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

PHP проверка адреса электронной почты, email

Ноябрь 10, 2015 г.

Серию валидаторов пополняю функцией проверки введенного email на соответствие формальным требованиям. По стандарту RFC822 Если есть необходимость соблюсти все требования, которые упомянуты в громоздкой спецификации RFC822, то лучший путь - воспользоваться ...

Читать

Генератор случайной строки в одну строку кода на PHP

Ноябрь 21, 2018 г.

Задача генерации случайной строки возникает часто в алгоритмах связанных с безопасностью. Начиная с версии PHP 5.3, стала доступна функция [crayon-6943bb468cbfb223109528/] которая позволяет генерировать цепочку псевдослучайных байтов произвольной длины. ...

Читать

Обращение к свойству объекта/класса в PHP, если имя св-ва хранится в переменной

Декабрь 12, 2013 г.

Из разряда "на заметку программисту". Есть такие вещи, о которых знаешь что они есть, но забываешь конкретную реализацию, когда доходит до использования. Именно так обстоит дело с тем, что описано в заголовке. Т.е. у нас есть переменная, где хранится ...

Читать

Как в PHP сделать буквы заглавными?

Сентябрь 13, 2016 г.

PHP обладает целым арсеналом работы со строками. Сделать буквы заглавными или наоборот перевести в строчные - нет ничего проще. Базовый набор функций для работы со строками содержит такие функции как: string strtolower ( string $string ); - ...

Читать
 

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

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



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