I try to get multiple values from setParameters, but with the same 'key', litke this :
->where('d.type = :type')->setParameters(array('type'=> 7, 'type => '8'))
But i have only result from '8', and not 7 + 8.
Change your where condition as follows
->where('d.type IN (:types)')
->setParameter('types', array(7, 8))
or
$qb = $this->createQueryBuilder('d');
// other parts of your query using $qb variable
->where($qb->expr()->in('d.type', array(7, 8));
With first example, if array(7, 8) is a parameter variable (passed to function) and it's empty, no error will be raised.
In second, if array(7, 8) is a parameter variable (passed to function) and it's empty, an error will be raised (so you should check carefully before run the query.
Select * From YourTable as d where d.type IN (7,8)?