1--TEST-- 2Bug #63916 PDO::PARAM_INT casts to 32bit int internally even on 64bit builds in pdo_sqlite 3--SKIPIF-- 4<?php 5if (!extension_loaded('pdo_sqlite')) die('skip pdo_sqlite extension not loaded'); 6if (PHP_INT_SIZE > 4) die('skip 32-bit only'); 7?> 8--FILE-- 9<?php 10$num = PHP_INT_MAX; // 32 bits 11$conn = new PDO('sqlite::memory:'); 12$conn->query('CREATE TABLE users (id INTEGER NOT NULL, num INTEGER NOT NULL, PRIMARY KEY(id))'); 13 14$stmt = $conn->prepare('insert into users (id, num) values (:id, :num)'); 15$stmt->bindValue(':id', 1, PDO::PARAM_INT); 16$stmt->bindValue(':num', $num, PDO::PARAM_INT); 17$stmt->execute(); 18 19$stmt = $conn->query('SELECT num FROM users'); 20$result = $stmt->fetchAll(PDO::FETCH_COLUMN); 21 22var_dump($num,$result[0]); 23 24?> 25--EXPECT-- 26int(2147483647) 27string(10) "2147483647" 28