использование (не установлено) для нескольких параметров

0

Я использую ответ здесь qaru.site/questions/75915/... чтобы удалить несколько параметров из URL-адреса. Я думал, что это работает, до сегодняшнего дня, когда я узнал, что unset() не работает, если я определил несколько параметров.

Мой PHP-код:

$url = $_SERVER["REQUEST_URI"];
$x = $url;
$parsed = parse_url($x);
$query = $parsed['query'];
parse_str($query, $params);
unset($params['qdef, qval1']);
$string = http_build_query($params);

$ params создает следующий массив, используя print_r:

Массив ([use_url] => on [zipcode] => Axminster, Devon EX13 5RZ [categories] => Массив ([0] => 2) [radius] => 0 [checkboxnational] => 1 [submit] => loading результаты... [yesq] => y [qdef] => 2 [qval1] => 100.00 [qval2] => 525.00 [seasoning] => 1 [slider-value1] => 0 [slider-value2] => 70 [resultbar] => 25 [sortbar] => расстояние [lat] => 50.77643440000001 [lng] => -2.9810417 [swlat] => 50.7773526197085 [swlng] => -2.9814507999999478 [nelat] => 50.7800505802915 [nelng] => -2.9749947000000247 [outcode] => EX13) 1

поэтому проблема заключается в том, что если я напишу unset($params['qdef']); то qdef удаляется из URL-адреса, но если я напишу unset($params['qdef, qval1']); то ничего не стесняется. Я пробовал разделять их запятой, охватывая каждый параметр в '[]', ничего не работает. Я пробовал много способов определения параметров в команде unset(), но ничего не работает.

Есть предположения?

  • 2
    unset($params['qdef'], $params['qval1']);
  • 0
    unset($params['qdef'], $params['qval1']); ?
Показать ещё 5 комментариев
Теги:
unset

1 ответ

1
Лучший ответ

$params['qdef'] и $params['qval1'] - это отдельные элементы массива

использование

unset($params['qdef'], $params['qval1']);

для их индивидуальной отмены

unset($params['qdef, qval1']); 

пытается отменить один элемент из $ params с ключом 'qdef, qval1'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню