Не правильно считает count COOKIE

При отправке ajax запроса, и добавления значений в массив $_COOKIE не правильно считает кол-во элементов в массиве: count($_COOKIE['favorite']), но при этом если использовать тот же механизм, только на сессиях: count($_SESSION['favorite']) - то все считает правильно. Т.е., если без обновления страницы, то показывает при первом добавлении - 0, после обновления страницы - все нормально считает. Как решить проблему кто знает? html

<a href="javascript:void(0);" data-id="14280" class="favorite">Добавить в избранное</a>
        <a href="javascript:void(0);" data-id="14281" class="favorite">Добавить в избранное</a>
        <a href="javascript:void(0);" data-id="14282" class="favorite">Добавить в избранное</a>
        <a href="javascript:void(0);" data-id="14283" class="favorite">Добавить в избранное</a>
        <a href="javascript:void(0);" data-id="14284" class="favorite">Добавить в избранное</a>
        <div class="result-favorite"></div>

js

$(document).ready(function() {
    $('.favorite').on('click', function(){
        let favorite_id = $(this).attr('data-id');
        $.ajax({
            url: '/actions.php',
            type: 'POST',
            data: {favorite_id: favorite_id},
            success: function(data) {
                console.log(data)
                $('.result-favorite').html(data);
            }
        });
    });
});

php

if(isset($_POST['favorite_id'])){
    $id = $_POST['favorite_id'];
    setcookie('favorite['.$id.']', $id, strtotime('+30 days'), '/');
    echo count($_COOKIE['favorite']);
    die;
}

Добавлено: По ссылке указанной Ипатьев, я попробовал сделать так:

setcookie('favorite['.$id.']', $id, strtotime('+30 days'), '/');
$_COOKIE['favorite'] = $id;

Но при этом count($_COOKIE['favorite']) теперь всегда показывает 1...


Ответы (0 шт):