innanzitutto ti ringrazio..
ho modificato cosi lo script:
codice:
if(isset($_POST['IDprodotto'])&&isset($_POST['quantita']))
{
    $IDprod= $_POST['IDprodotto'];
    $qta= $_POST['quantita'];
    if(isset($_COOKIE['acquisto'])) 
    {


        // ad un certo punto devo aggiungere un prodotto
        // cambio variabile solo per farti capire, in questo caso non sarebbe necessario
        $prodottiPHPnew = json_decode($_COOKIE['acquisto'], true);


        $prodottiPHPnew[] = ['IDprodotto' => $IDprod, 'quantita' => $qta];
        echo'array aggiornato<br>';
        print_r($prodottiPHPnew);
        


        // aggiorno l'array JSON
        $prodottiJS = json_encode($prodottiPHPnew);
        echo'<br><br>JSON aggiornato<br>';
        echo $prodottiJS; 
        setcookie("acquisto", $prodottiJS, time()+360000);
    }


    
    else 
    {
        /*$prodottiPHP = [];
        for( $i=0; $i<3; $i++ )
        {*/
            // inserisco 3 prodotti a caso nell'array PHP
            $prodottiPHP[] = ['IDprodotto' => $IDprod, 'quantita' => $qta];
        //}


        // adesso mi serve l'array JSON
        $prodottiJS = json_encode($prodottiPHP);
        echo $prodottiJS . "<br>";
        
        setcookie("acquisto", $prodottiJS, time()+360000); 
    }  
}
sembra funzioni correttamente, adesso se voglio accedere ad esempio al prodotto con id=10 devo fare un json_decode della variabile cookie e poi accedere tramite array giusto?