функция
since 3.2.0
_http_build_query()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
_http_build_query( array|object $data, string $prefix = null, string $sep = null, string $key = '', bool $urlencode = true ): string
Описание
См. также https://www.php.net/manual/en/function.http-build-query.php
Оригинал (английский)
Параметры
$data
array|object
обязательный
Массив или объект данных. Преобразуется в массив.
$prefix
string
необязательный
= null
Числовой индекс. Если задан, нумерация параметров начинается с него.
$sep
string
необязательный
= null
Разделитель аргументов; по умолчанию 'arg_separator.output'.
$key
string
необязательный
= ''
Используется как префикс имени ключа.
$urlencode
bool
необязательный
= true
Использовать ли urlencode() в результате.
Возвращаемое значение
string
Исходный код
wp-includes/functions.php:1064
function _http_build_query( $data, $prefix = null, $sep = null, $key = '', $urlencode = true ) {
$ret = array();
foreach ( (array) $data as $k => $v ) {
if ( $urlencode ) {
$k = urlencode( $k );
}
if ( is_int( $k ) && null !== $prefix ) {
$k = $prefix . $k;
}
if ( ! empty( $key ) ) {
$k = $key . '%5B' . $k . '%5D';
}
if ( null === $v ) {
continue;
} elseif ( false === $v ) {
$v = '0';
}
if ( is_array( $v ) || is_object( $v ) ) {
array_push( $ret, _http_build_query( $v, '', $sep, $k, $urlencode ) );
} elseif ( $urlencode ) {
array_push( $ret, $k . '=' . urlencode( $v ) );
} else {
array_push( $ret, $k . '=' . $v );
}
}
if ( null === $sep ) {
$sep = ini_get( 'arg_separator.output' );
}
return implode( $sep, $ret );
}
История изменений
| Версия | Описание |
|---|---|
| 3.2.0 | Introduced. |

