Я ищу имя функции PHP для построения строки запроса из массива пар ключ-значение. Пожалуйста, обратите внимание, я ищу встроенную функцию PHP для этого, а не доморощенную (это все, что поиск в Google, кажется, возвращает). Есть один, я просто не могу вспомнить его имя или найти его на php.net. IIRC его имя не так интуитивно понятно.
165
echo http_build_query(array("foo"=>"bar","bar"=>null))
будет производить толькоfoo=bar
Вот простая реализация с поддержкой php4:
источник
Так же, как дополнение к
@thatjuan
ответу.Более совместимая версия PHP4 этого:
источник
Поскольку этот вопрос довольно старый и для PHP, вот способ сделать это в (в настоящее время) очень популярной среде PHP Laravel.
Чтобы закодировать строку запроса для пути в вашем приложении, присвойте свои маршруты и затем используйте
route()
вспомогательную функцию следующим образом:Результат будет выглядеть примерно так:
Также имейте в виду, что если у вашего маршрута есть какие-либо параметры сегмента пути, например
/documents/{id}
, убедитесь, что вы также передалиid
аргументroute()
параметрам, иначе он по умолчанию будет использовать значение первого параметра.источник
Implode объединит массив в строку для вас, но чтобы сделать SQL-запрос из пары kay / value, вам придется написать свою собственную функцию.
источник