1. Шифровние имеет смысл если вы не хотите чтобы значение cookie могли подменить или подсмотреть. Для этого можно использовать
https://www.php.net/openssl_encrypt или любую обёртку из гугла по запросу "PHP encrypt lib"
2. Хранить в виде строки. Учтите что максимальный размер данных для cookie обычно 4Кб (строка длиной 4тыс символов). Самый компактный вариант - строка с числами через разделитель.
$id = "1,2,3,4,5"; или $id = "1|2|3|4|5";
- При шифровании длина строки будет выше чем исходная.
- Для удобства можно использовать json_encode(), это пригодится если с cookie так же надо будет работать через JS.
p.s. если предполагается хранить очень много id на клиенте, то предпочтительнее использовать localstorage который поддерживается всеми современными браузерами и не лимитирован 4кб
https://caniuse.com/#search=localstorage