PHP строку заменить? - PullRequest
       1

PHP строку заменить?

0 голосов
/ 11 октября 2011

Как мне взять строку вроде:

navMenu[]=1&navMenu[]=6&navMenu[]=2&navMenu[]=3&navMenu[]=4&navMenu[]=5

И в php сделайте так, чтобы я мог удалить определенное значение для navMenu [], но оно все равно осталось бы в том же порядке, но сзначение удалено.Или также добавьте значение.

Я пытался взорвать его в знаке &, но не уверен, как я могу добавить или удалить значение, и проверяю, чтобы знак & не был в начале или в концестроки.

1 Ответ

1 голос
/ 11 октября 2011
$str = 'navMenu[]=1&navMenu[]=6&navMenu[]=2&navMenu[]=3&navMenu[]=4&navMenu[]=5';
parse_str($str, $values);
$values['navMenu'] = array_diff($values['navMenu'], array('3'));
echo http_build_query($values);

Если вы получаете это из запроса, вам даже не нужно parse_str, вы можете просто получить уже проанализированную строку из $_GET или $_POST, удалить значение, а затем использовать http_build_query для собрать его в строку запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...