В куки записал json строку
[fav] => ["259","258","261","263","265"]
Каким образом на php удалить любое значение?
Пробовал и unset($_COOKIE['fav'][258])
и unset($_COOKIE['fav']['258'])
, ничего не подходит.
В куки вы записали, как вы правильно заметили, строку, поэтому все попытки удалить элемент как $_COOKIE['fav'][...]
обречены на провал.
Вам следует прочитать эту куку, привести ее к виду массива, удалить то что вам не нужно, затем вписать ее обратно.
Если опустить подробности с проверкой ее наличия, то примерно так:
$fjson = $_COOKIE['fav'];
$fav = json_decode($fjson);
$remove = 258;
$fav = array_diff($fav, [$remove]);
set_cookie('fav', json_encode($fav));
способов удалить значение из массива можно придумать множество:
array-search
) и удалитьflip
+ unset
array_filter
и так далее.
Как видно что Ваш массив является ассоциативным массивом. И поэтому удаление значение из ассоциативного массива будет таким образом:
$arr = ['fav' => ["259","258","261","263","265"]];
echo "<pre>";
print_r($arr);
echo "</pre>";
/* Это входной массив со всеми значениями:
Array
(
[fav] => Array
(
[0] => 259
[1] => 258
[2] => 261
[3] => 263
[4] => 265
)
)
*/
$del_val = "259";
$sub_arr = "fav";
if (($key = array_search($del_val, $arr[$sub_arr])) !== false) {
unset($arr[$sub_arr][$key]);
}
echo "<pre>";
print_r($arr);
echo "</pre>";
Это вид массива после удаление значение 259 из под массива fav
Array
(
[fav] => Array
(
[1] => 258
[2] => 261
[3] => 263
[4] => 265
)
)
Если упустить мометы с json и так далее, то не удалялось потому что вы пытались удалить по значению, а надо по индексу.
unset($_COOKIE['fav'][1])
Для удаления элемента со значением "258"
unset($_COOKIE['fav'][2])
Для удаления элемента со значением "261"
ЗдравствуйтеСделала http аутентификациюю Она работает, но почему-то при переходе на url другого вида выбивается ошибка о том, что $_SERVER['PHP_AUTH_USER']...
Доброго времени сутокПишу свой класс, наследуюсь от класса mysqli с целью прикрутить метод query() с автоматическим переподключением к базе, если...
ЗдравствуйтеПодскажите, как реализовать отправку на почту отправителя заявки с сайта и админа
Питаюсь парсить карточку товаров aliexpress сначала думал буду парсить через Simple HTML DOM но перейдя на мобильную версию, вижу что все ответы получают...