Задать вопрос
@1Novocaine

Как корректно добавить условие, чтобы исключить повторение значения в массивe $_COOKIE?

Условие заключалось в последовательной записи в массив куки id, приходящих по get-запросу. Пришел к такому варианту, однако, записываемые в массив значения повторяются, чего хотелось бы избежать. Попытка внедрить в условие !in_array приводят к перезаписи массива в случае повторяющегося значения.
Каким образом это можно исправить?
Заранее спасибо.
$cookieValue = []; 
    
    if (isset($_COOKIE['taskId'])) {
        $cookieValue = unserialize($_COOKIE['taskId']);
        array_push($cookieValue, $_GET['id']);
        }
            else 
            array_push($cookieValue, $_GET['id']);
            setcookie('taskId', serialize($cookieValue), time() + 24 * 60 * 60);


Рабочий вариант, спасибо Дмитрий.

$cookieValue = []; 
    
   if (isset($_COOKIE['taskId'])) {
        $cookieValue = unserialize($_COOKIE['taskId']);
        array_push($cookieValue, $_GET['id']);
        setcookie('taskId', serialize($cookieValue), time() + 24 * 60 * 60);
        }
            else 
            array_push($cookieValue, $_GET['id']);
            $unique = array_unique($cookieValue);
            setcookie('taskId', serialize($unique), time() + 24 * 60 * 60);
  • Вопрос задан
  • 68 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Compolomus
@Compolomus Куратор тега PHP
Комполом-быдлокодер
Если я правильно понял, то должно помочь
https://www.php.net/manual/ru/function.array-unique.php
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы