Merge from 5_3. Fixing 32 vs. 64bit issue.

This commit is contained in:
Ulf Wendel 2007-12-28 18:28:21 +00:00
parent 4ba70f548c
commit b9963f50d9

View File

@ -1,8 +1,8 @@
--TEST--
Bug #35517 (mysqli_stmt_fetch returns NULL)
--SKIPIF--
<?php
require_once('skipif.inc');
<?php
require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
@ -13,20 +13,33 @@ require_once('skipifconnectfailure.inc');
$mysql->query("CREATE TABLE temp (id INT UNSIGNED NOT NULL)");
$mysql->query("INSERT INTO temp (id) VALUES (3000000897),(3800001532),(3900002281),(3100059612)");
$stmt = $mysql->prepare("SELECT id FROM temp");
$stmt->execute();
$stmt->bind_result($id);
while ($stmt->fetch()) {
var_dump($id);
if (PHP_INT_SIZE == 8) {
if ((gettype($id) !== 'int') && (gettype($id) != 'integer'))
printf("[001] Expecting integer on 64bit got %s/%s\n", gettype($id), var_export($id, true));
} else {
if (gettype($id) !== 'string') {
printf("[002] Expecting string on 32bit got %s/%s\n", gettype($id), var_export($id, true));
}
if (ini_get("unicode.semantics") && !is_unicode($id)) {
printf("[003] Expecting unicode string\n");
}
}
print $id;
print "\n";
}
$stmt->close();
$mysql->query("DROP TABLE temp");
$mysql->close();
print "done!";
?>
--EXPECTF--
%s(10) "3000000897"
%s(10) "3800001532"
%s(10) "3900002281"
%s(10) "3100059612"
3000000897
3800001532
3900002281
3100059612
done!