Трябва да използвате bindValue
, а не bindParam
bindParam
приема променлива чрез препратка и не извлича стойност в момента на извикване на bindParam
. Намерих това в коментар в PHP документите:
bindValue(':param', null, PDO::PARAM_INT);
P.S. Може да се изкушите да направите това bindValue(':param', null, PDO::PARAM_NULL);
но не работи за всички (благодаря на Уил Шейвър за докладването.)