--TEST-- PDO Common: Bug #73234 (Emulated statements let value dictate parameter type) --EXTENSIONS-- pdo --SKIPIF-- getAttribute(PDO::ATTR_DRIVER_NAME) == 'oci') { die("xfail PDO::PARAM_NULL is not honored by OCI driver, related with bug #81586"); } ?> --FILE-- setAttribute(PDO::ATTR_EMULATE_PREPARES, true); switch ($db->getAttribute(PDO::ATTR_DRIVER_NAME)) { case 'dblib': $sql = 'CREATE TABLE test(id INT NULL)'; break; default: $sql = 'CREATE TABLE test(id INT)'; break; } $db->exec($sql); $stmt = $db->prepare('INSERT INTO test VALUES(:value)'); $stmt->bindValue(':value', 0, PDO::PARAM_NULL); $stmt->execute(); $stmt->bindValue(':value', null, PDO::PARAM_NULL); $stmt->execute(); $stmt = $db->query('SELECT * FROM test'); var_dump($stmt->fetchAll(PDO::FETCH_ASSOC)); ?> --EXPECT-- array(2) { [0]=> array(1) { ["id"]=> NULL } [1]=> array(1) { ["id"]=> NULL } }