[8]=>
NULL
[9]=>
- unicode(4) "foo1"
+ %unicode|string%(4) "foo1"
[10]=>
- unicode(4) "1000"
+ %unicode|string%(4) "1000"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(7) {
[0]=>
- unicode(10) "2002-01-02"
+ %unicode|string%(10) "2002-01-02"
[1]=>
- unicode(8) "12:49:00"
+ %unicode|string%(8) "12:49:00"
[2]=>
- unicode(19) "2002-01-02 17:46:59"
+ %unicode|string%(19) "2002-01-02 17:46:59"
[3]=>
int(2010)
[4]=>
- unicode(19) "2010-07-10 00:00:00"
+ %unicode|string%(19) "2010-07-10 00:00:00"
[5]=>
- unicode(19) "0000-00-00 00:00:00"
+ %unicode|string%(19) "0000-00-00 00:00:00"
[6]=>
- unicode(19) "1999-12-29 00:00:00"
+ %unicode|string%(19) "1999-12-29 00:00:00"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(2) {
[0]=>
- unicode(10) "1234567890"
+ %unicode|string%(10) "1234567890"
[1]=>
- unicode(15) "this is a test0"
+ %unicode|string%(15) "this is a test0"
}
array(2) {
[0]=>
- unicode(10) "1234567891"
+ %unicode|string%(10) "1234567891"
[1]=>
- unicode(15) "this is a test1"
+ %unicode|string%(15) "this is a test1"
}
array(2) {
[0]=>
- unicode(10) "1234567892"
+ %unicode|string%(10) "1234567892"
[1]=>
- unicode(15) "this is a test2"
+ %unicode|string%(15) "this is a test2"
}
array(2) {
[0]=>
- unicode(10) "1234567893"
+ %unicode|string%(10) "1234567893"
[1]=>
- unicode(15) "this is a test3"
+ %unicode|string%(15) "this is a test3"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(2) {
[0]=>
- unicode(10) "1234567890"
+ %unicode|string%(10) "1234567890"
[1]=>
- unicode(13) "32K String ok"
+ %unicode|string%(13) "32K String ok"
}
-done!
+done!
\ No newline at end of file
mysqli_close($link);
print "done!";
?>
+
--EXPECTF--
array(8) {
[0]=>
[2]=>
int(4)
[3]=>
- unicode(14) "33333333333333"
+ %unicode|string%(14) "33333333333333"
[4]=>
int(0)
[5]=>
}
20123456
3123456789
-done!
+done!
\ No newline at end of file
[6]=>
float(8.88888914608E+14)
}
-done!
+done!
\ No newline at end of file
[6]=>
string(6) "foobar"
[7]=>
- unicode(11) "mysql rulez"
+ %unicode|string%(11) "mysql rulez"
}
-done!
+done!
\ No newline at end of file
[6]=>
string(3) "206"
[7]=>
- unicode(3) "6.7"
+ %unicode|string%(3) "6.7"
}
-done!
+done!
\ No newline at end of file
Num_of_rows=1
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(6) "foobar"
+ %unicode|string%(6) "foobar"
}
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(4) "egon"
+ %unicode|string%(4) "egon"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(6) "foobar"
+ %unicode|string%(6) "foobar"
}
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(4) "egon"
+ %unicode|string%(4) "egon"
}
-done!
+done!
\ No newline at end of file
--TEST--
-mysqli fetch user variable
+mysqli fetch user variable
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
<?php
include "connect.inc";
-
+
/*** test mysqli_connect 127.0.0.1 ***/
$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket);
if (!$stmt = mysqli_prepare($link, "SELECT @dummy"))
printf("[002] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
-
+
mysqli_bind_result($stmt, $dummy);
mysqli_execute($stmt);
mysqli_fetch($stmt);
print "done!";
?>
--EXPECTF--
-unicode(6) "foobar"
-done!
+%unicode|string%(6) "foobar"
+done!
\ No newline at end of file
[0]=>
string(32) "37b51d194a7513e45b56f6524f2d51f2"
[1]=>
- unicode(%d) "%s"
+ %unicode|string%(%d) "%s"
[2]=>
- unicode(3) "foo"
+ %unicode|string%(3) "foo"
}
-done!
+done!
\ No newline at end of file
[8]=>
NULL
[9]=>
- unicode(3) "foo"
+ %unicode|string%(3) "foo"
[10]=>
- unicode(6) "foobar"
+ %unicode|string%(6) "foobar"
}
-done!
+done!
\ No newline at end of file
?>
--FILE--
<?php
- /* NOTE: There's an option in mysqlnd which controls if data and
- time are returned as unicode or not. Consider this if you consider
- adding a UEXPECTF to the test. */
-
include "connect.inc";
/*** test mysqli_connect 127.0.0.1 ***/
--EXPECTF--
array(2) {
[0]=>
- unicode(10) "1234567890"
+ %unicode|string%(10) "1234567890"
[1]=>
- %s(14) "this is a test"
+ %unicode|string%(14) "this is a test"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(2) {
[0]=>
- unicode(10) "1234567890"
+ %unicode|string%(10) "1234567890"
[1]=>
%s(13) "32K String ok"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
array(2) {
[0]=>
- unicode(10) "Hello Worl"
+ %unicode|string%(10) "Hello Worl"
[1]=>
- %s(99) "This is the first sentence. And this is the second sentence. And finally this is the last sentence."
+ %unicode|string%(99) "This is the first sentence. And this is the second sentence. And finally this is the last sentence."
}
-done!
+done!
\ No newline at end of file
--TEST--
function test: mysqli_character_set_name
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
print "done!";
?>
--EXPECTF--
-unicode(%d) "%s"
-done!
+%unicode|string%(%d) "%s"
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-unicode(0) ""
-unicode(%d) "%s"
-done!
+%unicode|string%(0) ""
+%unicode|string%(%d) "%s"
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-unicode(38) "Records: 3 Duplicates: 0 Warnings: 0"
-done!
+%unicode|string%(38) "Records: 3 Duplicates: 0 Warnings: 0"
+done!
\ No newline at end of file
--TEST--
function test: mysqli_get_host_info
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
print "done!";
?>
--EXPECTF--
-unicode(%d) "%s via %s"
-done!
+%unicode|string%(%d) "%s via %s"
+done!
\ No newline at end of file
?>
--EXPECTF--
object(stdClass)#%d (7) {
- [u"c1"]=>
- unicode(1) "0"
- [u"c2"]=>
- unicode(5) "35999"
- [u"c3"]=>
+ [%u|b%"c1"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"c2"]=>
+ %unicode|string%(5) "35999"
+ [%u|b%"c3"]=>
NULL
- [u"c4"]=>
- unicode(4) "-500"
- [u"c5"]=>
- unicode(6) "-32768"
- [u"c6"]=>
- unicode(1) "0"
- [u"c7"]=>
- unicode(1) "0"
+ [%u|b%"c4"]=>
+ %unicode|string%(4) "-500"
+ [%u|b%"c5"]=>
+ %unicode|string%(6) "-32768"
+ [%u|b%"c6"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"c7"]=>
+ %unicode|string%(1) "0"
}
-done!
+done!
\ No newline at end of file
[0]=>
string(15) "Rasmus is No. 1"
}
-done!
---UEXPECF--
-array(1) {
- [0]=>
- unicode(15) "Rasmus is No. 1"
-}
done!
\ No newline at end of file
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
-
+
include "connect.inc";
$link = mysqli_connect($host, $user, $passwd);
--EXPECTF--
array(2) {
[0]=>
- unicode(4) "port"
+ %unicode|string%(4) "port"
[1]=>
- unicode(%d) "%s"
+ %unicode|string%(%d) "%s"
}
-done!
+done!
\ No newline at end of file
array(2) {
[0]=>
object(stdClass)#5 (11) {
- [u"name"]=>
- unicode(3) "foo"
- [u"orgname"]=>
- unicode(3) "foo"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(32768)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
[1]=>
object(stdClass)#6 (11) {
- [u"name"]=>
- unicode(3) "bar"
- [u"orgname"]=>
- unicode(3) "bar"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(0)
- [u"type"]=>
+ [%u|b%"type"]=>
int(253)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
}
=== fetch_field_direct ===
object(stdClass)#6 (11) {
- [u"name"]=>
- unicode(3) "foo"
- [u"orgname"]=>
- unicode(3) "foo"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(32768)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
object(stdClass)#6 (11) {
- [u"name"]=>
- unicode(3) "bar"
- [u"orgname"]=>
- unicode(3) "bar"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(0)
- [u"type"]=>
+ [%u|b%"type"]=>
int(253)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
=== fetch_field ===
object(stdClass)#6 (11) {
- [u"name"]=>
- unicode(3) "foo"
- [u"orgname"]=>
- unicode(3) "foo"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "foo"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(32768)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
object(stdClass)#5 (11) {
- [u"name"]=>
- unicode(3) "bar"
- [u"orgname"]=>
- unicode(3) "bar"
- [u"table"]=>
- unicode(13) "test_affected"
- [u"orgtable"]=>
- unicode(13) "test_affected"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"orgname"]=>
+ %unicode|string%(3) "bar"
+ [%u|b%"table"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(13) "test_affected"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(0)
- [u"type"]=>
+ [%u|b%"type"]=>
int(253)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
-done!
+done!
\ No newline at end of file
[8]=>
NULL
[9]=>
- unicode(4) "foo1"
+ %unicode|string%(4) "foo1"
[10]=>
- unicode(4) "1000"
+ %unicode|string%(4) "1000"
}
-done!
+done!
\ No newline at end of file
--TEST--
mysql_fetch_row (OO-Style)
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
--EXPECTF--
array(1) {
[0]=>
- unicode(%d) "%s"
+ %unicode|string%(%d) "%s"
}
-done!
+done!
\ No newline at end of file
--TEST--
-extend mysqli
+extend mysqli
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
class foobar extends mysqli {
function test () {
- return ("I like MySQL 4.1");
+ return ("I do not like MySQL 4.1");
}
}
printf("%s\n", $foo->test());
?>
--EXPECT--
-I like MySQL 4.1
+I do not like MySQL 4.1
bool(true)
bool(true)
object(mysqli_stmt)#%d (%d) {
+ [%u|b%"affected_rows"]=>
+ int(-1)
+ [%u|b%"insert_id"]=>
+ int(0)
+ [%u|b%"num_rows"]=>
+ int(0)
+ [%u|b%"param_count"]=>
+ int(0)
+ [%u|b%"field_count"]=>
+ int(1)
+ [%u|b%"errno"]=>
+ int(0)
+ [%u|b%"error"]=>
+ %unicode|string%(0) ""
+ [%u|b%"sqlstate"]=>
+ %unicode|string%(5) "00000"
+ [%u|b%"id"]=>
+ int(3)
}
bool(true)
bool(false)
-unicode(0) ""
+%unicode|string%(0) ""
Warning: mysqli_stmt_reset() expects parameter 1 to be mysqli_stmt, boolean given in %s on line %d
NULL
Rows: 3
array(1) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
}
-done!
+done!
\ No newline at end of file
--TEST--
multiple binds
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
[0]=>
int(1)
[1]=>
- unicode(3) "foo"
+ %unicode|string%(3) "foo"
[2]=>
int(2)
[3]=>
- unicode(3) "bar"
+ %unicode|string%(3) "bar"
}
-done!
+done!
\ No newline at end of file
--TEST--
sqlmode + bind
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
mysqli_close($link);
print "done!";
?>
---EXPECT--
-unicode(6) "foobar"
-done!
+--EXPECTF--
+%unicode|string%(6) "foobar"
+done!
\ No newline at end of file
--TEST--
mysqli_fetch_object with classes
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
--EXPECTF--
test_class::__construct(1,2)
object(test_class)#%d (7) {
- [u"c1"]=>
- unicode(1) "0"
- [u"c2"]=>
- unicode(5) "35999"
- [u"c3"]=>
+ [%u|b%"c1"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"c2"]=>
+ %unicode|string%(5) "35999"
+ [%u|b%"c3"]=>
NULL
- [u"c4"]=>
- unicode(4) "-500"
- [u"c5"]=>
- unicode(6) "-32768"
- [u"c6"]=>
- unicode(1) "0"
- [u"c7"]=>
- unicode(1) "0"
+ [%u|b%"c4"]=>
+ %unicode|string%(4) "-500"
+ [%u|b%"c5"]=>
+ %unicode|string%(6) "-32768"
+ [%u|b%"c6"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"c7"]=>
+ %unicode|string%(1) "0"
}
-Done
+Done
\ No newline at end of file
unlink($filename);
print "done!";
?>
---EXPECTF--
+--EXPECT--
foo-bar
-unicode-unicode
+%unicode|string%-%unicode|string%
rab-oof
-unicode-unicode
-done!
+%unicode|string%-%unicode|string%
+done!
\ No newline at end of file
--TEST--
resultset constructor
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
--EXPECTF--
array(1) {
[0]=>
- unicode(3) "foo"
+ %unicode|string%(3) "foo"
}
-done!
+done!
\ No newline at end of file
--TEST--
-resultset constructor
+resultset constructor
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
var_dump($foo);
?>
---EXPECT--
-unicode(3) "foo"
+--EXPECTF--
+%unicode|string%(3) "foo"
\ No newline at end of file
if (!function_exists('mysqli_set_charset')) {
die('skip mysqli_set_charset() not available');
}
-if (unicode_semantics()) {
- die('skip set character set not functional with unicode.semantics=On');
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip set character set not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
}
?>
--FILE--
$s = mysqli_get_client_info();
echo gettype($s);
?>
---EXPECT--
-unicode
+--EXPECTF--
+%unicode|string%
\ No newline at end of file
--TEST--
mysqli multi_query, next_result, more_results
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
--EXPECTF--
array(1) {
[1]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
}
array(1) {
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
-done!
+done!
\ No newline at end of file
--TEST--
mysqli warning_count, get_warnings
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
--EXPECTF--
int(1)
int(1051)
-unicode(26) "Unknown table 'not_exists'"
-unicode(5) "HY000"
-done!
+%unicode|string%(26) "Unknown table 'not_exists'"
+%unicode|string%(5) "HY000"
+done!
\ No newline at end of file
--EXPECTF--
bool(%s)
int(%d)
-unicode(%d) "%s"
+%unicode|string%(%d) "%s"
int(%d)
bool(%s)
int(%d)
-done!
+done!
\ No newline at end of file
--TEST--
mysqli_autocommit() tests
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
bool(true)
array(1) {
[0]=>
- unicode(1) "0"
+ %unicode|string%(1) "0"
}
bool(true)
array(1) {
[0]=>
- unicode(1) "1"
-}
+ %unicode|string%(1) "1"
+}
\ No newline at end of file
--TEST--
Bug #34810 (mysqli::init() and others use wrong $this pointer without checks)
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
<?php
-class DbConnection {
+class DbConnection {
public function connect() {
include "connect.inc";
$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket);
- var_dump($link);
-
+ var_dump($link);
+
$link = mysqli_init();
/* @ is to supress 'Property access is not allowed yet' */
@var_dump($link);
-
+
$mysql = new mysqli($host, $user, $passwd, $db, $port, $socket);
$mysql->query("DROP TABLE IF EXISTS test_warnings");
$mysql->query("CREATE TABLE test_warnings (a int not null)");
$mysql->query("SET sql_mode=''");
$mysql->query("INSERT INTO test_warnings VALUES (1),(2),(NULL)");
var_dump($mysql->get_warnings());
- }
-}
+ }
+}
-$db = new DbConnection();
+$db = new DbConnection();
$db->connect();
echo "Done\n";
?>
---EXPECTF--
+--EXPECTF--
object(mysqli)#%d (%d) {
- [u"affected_rows"]=>
+ [%u|b%"affected_rows"]=>
int(0)
- [u"client_info"]=>
- unicode(%d) "%s"
- [u"client_version"]=>
+ [%u|b%"client_info"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"client_version"]=>
int(%d)
- [u"connect_errno"]=>
+ [%u|b%"connect_errno"]=>
int(0)
- [u"connect_error"]=>
- unicode(0) ""
- [u"errno"]=>
+ [%u|b%"connect_error"]=>
+ %unicode|string%(0) ""
+ [%u|b%"errno"]=>
int(0)
- [u"error"]=>
- unicode(0) ""
- [u"field_count"]=>
+ [%u|b%"error"]=>
+ %unicode|string%(0) ""
+ [%u|b%"field_count"]=>
int(0)
- [u"host_info"]=>
- unicode(%d) "MySQL host info: %s via %s%s"
- [u"info"]=>
+ [%u|b%"host_info"]=>
+ %unicode|string%(%d) "MySQL host info: %s via %s%s"
+ [%u|b%"info"]=>
NULL
- [u"insert_id"]=>
+ [%u|b%"insert_id"]=>
int(0)
- [u"server_info"]=>
- unicode(%d) "%s"
- [u"server_version"]=>
+ [%u|b%"server_info"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"server_version"]=>
int(%d)
- [u"sqlstate"]=>
- unicode(5) "00000"
- [u"protocol_version"]=>
+ [%u|b%"sqlstate"]=>
+ %unicode|string%(5) "00000"
+ [%u|b%"protocol_version"]=>
int(10)
- [u"thread_id"]=>
+ [%u|b%"thread_id"]=>
int(%d)
- [u"warning_count"]=>
+ [%u|b%"warning_count"]=>
int(0)
}
object(mysqli)#%d (%d) {
- [u"affected_rows"]=>
+ [%u|b%"affected_rows"]=>
NULL
- [u"client_info"]=>
- unicode(%d) "%s"
- [u"client_version"]=>
+ [%u|b%"client_info"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"client_version"]=>
int(%d)
- [u"connect_errno"]=>
+ [%u|b%"connect_errno"]=>
int(0)
- [u"connect_error"]=>
- unicode(0) ""
- [u"errno"]=>
+ [%u|b%"connect_error"]=>
+ %unicode|string%(0) ""
+ [%u|b%"errno"]=>
int(0)
- [u"error"]=>
- unicode(0) ""
- [u"field_count"]=>
+ [%u|b%"error"]=>
+ %unicode|string%(0) ""
+ [%u|b%"field_count"]=>
NULL
- [u"host_info"]=>
+ [%u|b%"host_info"]=>
NULL
- [u"info"]=>
+ [%u|b%"info"]=>
NULL
- [u"insert_id"]=>
+ [%u|b%"insert_id"]=>
NULL
- [u"server_info"]=>
+ [%u|b%"server_info"]=>
NULL
- [u"server_version"]=>
+ [%u|b%"server_version"]=>
NULL
- [u"sqlstate"]=>
+ [%u|b%"sqlstate"]=>
NULL
- [u"protocol_version"]=>
+ [%u|b%"protocol_version"]=>
NULL
- [u"thread_id"]=>
+ [%u|b%"thread_id"]=>
NULL
- [u"warning_count"]=>
+ [%u|b%"warning_count"]=>
NULL
}
object(mysqli_warning)#%d (%d) {
- [u"message"]=>
- unicode(25) "Column 'a' cannot be null"
- [u"sqlstate"]=>
- unicode(5) "HY000"
- [u"errno"]=>
+ [%u|b%"message"]=>
+ %unicode|string%(25) "Column 'a' cannot be null"
+ [%u|b%"sqlstate"]=>
+ %unicode|string%(5) "HY000"
+ [%u|b%"errno"]=>
int(1048)
}
Done
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)) {
+ if ((version_compare(PHP_VERSION, '5.9.9', '>') == 1) && !is_unicode($id)) {
printf("[003] Expecting unicode string\n");
}
}
[0]=>
bool(true)
[1]=>
- unicode(6) "latin1"
+ string(6) "latin1"
[2]=>
bool(true)
[3]=>
- unicode(4) "utf8"
+ string(4) "utf8"
[4]=>
bool(false)
[5]=>
- unicode(4) "utf8"
+ string(4) "utf8"
}
done!
?>
--EXPECTF--
Using CAST('somestring' AS CHAR)...
-unicode(3) "one"
-unicode(5) "three"
-unicode(3) "two"
+%unicode|string%(3) "one"
+%unicode|string%(5) "three"
+%unicode|string%(3) "two"
Mixing CAST('somestring'AS CHAR), integer and CAST(integer AS CHAR)...
-unicode(1) "1"
-unicode(5) "three"
-unicode(1) "2"
+%unicode|string%(1) "1"
+%unicode|string%(5) "three"
+%unicode|string%(1) "2"
Using integer only...
int(1)
int(303)
int(2)
Testing bind_param(), strings only...
-unicode(3) "one"
-unicode(5) "three"
-unicode(3) "two"
+%unicode|string%(3) "one"
+%unicode|string%(5) "three"
+%unicode|string%(3) "two"
Testing bind_param(), strings only, with CAST AS CHAR...
-unicode(3) "one"
-unicode(32) "three beers are more than enough"
-unicode(3) "two"
+%unicode|string%(3) "one"
+%unicode|string%(32) "three beers are more than enough"
+%unicode|string%(3) "two"
done!
register_shutdown_function("shutdown_clean", $file);
}
- if (ini_get('unicode.semantics')) {
+ if ((version_compare(PHP_VERSION, '5.9.9', '>') == 1)) {
if (!fwrite($fp, (binary)"'97';'x';\n") ||
!fwrite($fp, (binary)"'98';'y';\n") ||
!fwrite($fp, (binary)"99;'z';\n")) {
if (!mysqli_query($link, 'CREATE TABLE test(id INT, label CHAR(1), PRIMARY KEY(id)) ENGINE = ' . $engine))
printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (1, 'a')"))
+ if (!mysqli_query($link, 'INSERT INTO test(id, label) VALUES (1, "a")'))
printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (1 !== ($tmp = mysqli_affected_rows($link)))
printf("[010] Expecting int/1, got %s/%s\n", gettype($tmp), $tmp);
// ignore INSERT error, NOTE: command line returns 0, affected_rows returns -1 as documented
- mysqli_query($link, "INSERT INTO test(id, label) VALUES (1, 'a')");
+ mysqli_query($link, 'INSERT INTO test(id, label) VALUES (1, "a")');
if (-1 !== ($tmp = mysqli_affected_rows($link)))
printf("[011] Expecting int/-1, got %s/%s\n", gettype($tmp), $tmp);
- if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (1, 'a') ON DUPLICATE KEY UPDATE id = 4"))
+ if (!mysqli_query($link, 'INSERT INTO test(id, label) VALUES (1, "a") ON DUPLICATE KEY UPDATE id = 4'))
printf("[012] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (2 !== ($tmp = mysqli_affected_rows($link)))
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!$mysqli->query('CREATE TABLE test(id INT, label CHAR(1), PRIMARY KEY(id)) ENGINE = ' . $engine))
printf("[004] [%d] %s\n", $mysqli->errno, $mysqli->error);
- if (!$mysqli->query("INSERT INTO test(id, label) VALUES (1, 'a')"))
+ if (!$mysqli->query('INSERT INTO test(id, label) VALUES (1, "a")'))
printf("[005] [%d] %s\n", $mysqli->errno, $mysqli->error);
if (1 !== ($tmp = $mysqli->affected_rows))
if (-1 !== ($tmp = $mysqli->affected_rows))
printf("[007] Expecting int/-1, got %s/%s\n", gettype($tmp), $tmp);
- if (!$mysqli->query("INSERT INTO test(id, label) VALUES (1, 'a') ON DUPLICATE KEY UPDATE id = 4"))
+ if (!$mysqli->query('INSERT INTO test(id, label) VALUES (1, "a") ON DUPLICATE KEY UPDATE id = 4'))
printf("[008] [%d] %s\n", $mysqli->errno, $mysqli->error);
if (2 !== ($tmp = $mysqli->affected_rows))
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!mysqli_query($link, 'CREATE TABLE test(id INT AUTO_INCREMENT PRIMARY KEY, label CHAR(10))'))
printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, 'z')"))
+ if (!mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "z")'))
printf("[004] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (($insert_id = mysqli_insert_id($link)) !== 100)
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
printf("[001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
- if (!$stmt = mysqli_prepare($link, "SELECT 'prepared statements should be released'"))
- printf("[002] [%d] %s\n", mysqli_errno(), mysqli_error());
+ if (!$stmt = mysqli_prepare($link, 'SELECT "prepared statements should be released"'))
+ printf("[002] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
mysqli_change_user($link, $user, $passwd, $db);
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
printf("[001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
- if (!$res = mysqli_query($link, "SHOW CHARACTER SET LIKE 'latin%'"))
+ if (!$res = mysqli_query($link, 'SHOW CHARACTER SET LIKE "latin%"'))
printf("[002] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$charsets = array();
if (isset($not_changed['charset_client']) &&
$charset != $not_changed['charset_client'] &&
- mysqli_query($link, sprintf("SET @@character_set_client = '%s'", $charset)))
+ mysqli_query($link, sprintf('SET @@character_set_client = "%s"', $charset)))
unset($not_changed['charset_client']);
if (isset($not_changed['charset_connection']) &&
$charset != $not_changed['charset_connection'] &&
- mysqli_query($link, sprintf("SET @@character_connection = '%s'", $charset)))
+ mysqli_query($link, sprintf('SET @@character_connection = "%s"', $charset)))
unset($not_changed['charset_connection']);
if (isset($not_changed['charset_results']) &&
$charset != $not_changed['charset_results'] &&
- mysqli_query($link, sprintf("SET @@character_set_results = '%s'", $charset)))
+ mysqli_query($link, sprintf('SET @@character_set_results = "%s"', $charset)))
unset($not_changed['charset_results']);
if (isset($not_changed['collation_connection']) &&
$collation != $not_changed['collation_connection'] &&
- mysqli_query($link, sprintf("SET @@collation_connection = '%s'", $collation)))
+ mysqli_query($link, sprintf('SET @@collation_connection = "%s"', $collation)))
unset($not_changed['collation_connection']);
if (isset($not_changed['collation_database']) &&
$collation != $not_changed['collation_database'] &&
- mysqli_query($link, sprintf("SET @@collation_database = '%s'", $collation)))
+ mysqli_query($link, sprintf('SET @@collation_database = "%s"', $collation)))
unset($not_changed['collation_database']);
if (isset($not_changed['collation_server']) &&
$collation != $not_changed['collation_server'] &&
- mysqli_query($link, sprintf("SET @@collation_server = '%s'", $collation)))
+ mysqli_query($link, sprintf('SET @@collation_server = "%s"', $collation)))
unset($not_changed['collation_server']);
if (empty($not_changed))
var_dump($defaults);
}
- if (ini_get('unicode.semantics')) {
+ if ((version_compare(PHP_VERSION, '5.9.9', '>') == 1)) {
// charsets cannot take any other value but utf8 in unicode mode
$defaults['charset_client'] = 'utf8';
$defaults['charset_connection'] = 'utf8';
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
Fetching results from tables of different charsets.
--SKIPIF--
<?php
-require_once('skipif.inc');
+require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
require_once('skipifunicode.inc');
require_once('skipifemb.inc');
+
+if (!function_exists('mysqli_set_charset')) {
+ die('skip mysqli_set_charset() not available');
+}
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip set character set not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
+}
?>
--FILE--
<?php
$tmp = NULL;
$link = NULL;
-
- if (ini_get("unicode.semantics")){
- die('done!');
- }
-
-
if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
printf("[001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s\n",
$host, $user, $db, $port, $socket);
--TEST--
Interface of the class mysqli
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
'character_set_name' => true,
'client_encoding' => true,
'close' => true,
- 'commit' => true,
+ 'commit' => true,
'connect' => true,
'dump_debug_info' => true,
'escape_string' => true,
Magic, magic properties:
mysqli->affected_rows = '%s'/integer ('%s'/integer)
-mysqli->client_info = '%s'/unicode ('%s'/unicode)
+mysqli->client_info = '%s'/%unicode|string% ('%s'/%unicode|string%)
mysqli->client_version = '%d'/integer ('%d'/integer)
mysqli->errno = '0'/integer ('0'/integer)
-mysqli->error = ''/unicode (''/unicode)
+mysqli->error = ''/%unicode|string% (''/%unicode|string%)
mysqli->field_count = '0'/integer ('0'/integer)
mysqli->insert_id = '0'/integer ('0'/integer)
-mysqli->sqlstate = '00000'/unicode ('00000'/unicode)
-mysqli->host_info = '%s'/unicode ('%s'/unicode)
-mysqli->info = ''/NULL (''/unicode)
+mysqli->sqlstate = '00000'/%unicode|string% ('00000'/%unicode|string%)
+mysqli->host_info = '%s'/%unicode|string% ('%s'/%unicode|string%)
+mysqli->info = ''/NULL (''/%unicode|string%)
mysqli->thread_id = '%d'/integer ('%d'/integer)
mysqli->protocol_version = '%d'/integer ('%d'/integer)
-mysqli->server_info = '%s'/unicode ('%s'/unicode)
+mysqli->server_info = '%s'/%unicode|string% ('%s'/%unicode|string%)
mysqli->server_version = '%d'/integer ('%d'/integer)
mysqli->warning_count = '0'/integer ('0'/integer)
setting mysqli->unknown, mysqli_unknown = 'friday'
Access hidden properties for MYSLQI_STATUS_INITIALIZED (TODO documentation):
-mysqli->connect_error = ''/unicode (''/unicode)
+mysqli->connect_error = ''/%unicode|string% (''/%unicode|string%)
mysqli->connect_errno = '0'/integer ('0'/integer)
-done!
+done!
\ No newline at end of file
Constructor:
-Warning: mysqli_result::__construct() expects parameter 2 to be long, Unicode string given in %s on line %d
+Warning: mysqli_result::__construct() expects parameter 2 to be long, %unicode_string_optional% given in %s on line %d
-Warning: mysqli_result::__construct() expects parameter 1 to be mysqli, Unicode string given in %s on line %d
-done!
+Warning: mysqli_result::__construct() expects parameter 1 to be mysqli, %unicode_string_optional% given in %s on line %d
+done!
\ No newline at end of file
--TEST--
Interface of the class mysqli_stmt
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
Prepare using the constructor:
-Warning: mysqli_stmt::__construct() expects parameter 2 to be binary string, object given in %s on line %d
-done!
+Warning: mysqli_stmt::__construct() expects parameter 2 to be string, object given in %s on line %d
+done!
\ No newline at end of file
--EXPECTF--
Warning: mysqli_connect(): (%d/%d): Access denied for user '%s'@'%s' (using password: YES) in %s on line %d
array(1) {
- [u"testing"]=>
- unicode(21) "mysqli.default_socket"
+ [%u|b%"testing"]=>
+ %unicode|string%(21) "mysqli.default_socket"
}
array(1) {
- [u"testing"]=>
- unicode(19) "mysqli.default_port"
+ [%u|b%"testing"]=>
+ %unicode|string%(19) "mysqli.default_port"
}
array(1) {
- [u"testing"]=>
- unicode(17) "mysqli.default_pw"
+ [%u|b%"testing"]=>
+ %unicode|string%(17) "mysqli.default_pw"
}
array(2) {
[0]=>
- unicode(19) "mysqli.default_user"
- [u"testing"]=>
- unicode(19) "mysqli.default_user"
+ %unicode|string%(19) "mysqli.default_user"
+ [%u|b%"testing"]=>
+ %unicode|string%(19) "mysqli.default_user"
}
array(1) {
[0]=>
- unicode(19) "mysqli.default_host"
+ %unicode|string%(19) "mysqli.default_host"
}
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
array(1) {
- [u"testing"]=>
- unicode(21) "mysqli.default_socket"
+ [%u|b%"testing"]=>
+ %unicode|string%(21) "mysqli.default_socket"
}
array(1) {
- [u"testing"]=>
- unicode(19) "mysqli.default_port"
+ [%u|b%"testing"]=>
+ %unicode|string%(19) "mysqli.default_port"
}
array(1) {
- [u"testing"]=>
- unicode(17) "mysqli.default_pw"
+ [%u|b%"testing"]=>
+ %unicode|string%(17) "mysqli.default_pw"
}
array(1) {
- [u"testing"]=>
- unicode(19) "mysqli.default_user"
+ [%u|b%"testing"]=>
+ %unicode|string%(19) "mysqli.default_user"
}
array(1) {
- [u"all_defaults"]=>
- unicode(13) "have been set"
+ [%u|b%"all_defaults"]=>
+ %unicode|string%(13) "have been set"
}
array(1) {
- [u"all_defaults"]=>
- unicode(13) "have been set"
+ [%u|b%"all_defaults"]=>
+ %unicode|string%(13) "have been set"
}
-done!
+done!
\ No newline at end of file
--TEST--
Calling connect() on an open connection to create a new connection
--SKIPIF--
-<?php
-require_once('skipif.inc');
-require_once('skipifemb.inc');
+<?php
+require_once('skipif.inc');
+require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
?>
--EXPECTF--
array(1) {
- [u"it_works"]=>
- unicode(2) "ok"
+ [%u|b%"it_works"]=>
+ %unicode|string%(2) "ok"
}
array(1) {
- [u"syntax"]=>
- unicode(18) "works also with oo"
+ [%u|b%"syntax"]=>
+ %unicode|string%(18) "works also with oo"
}
-done!
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-unicode(32) "t:O,/tmp/mysqli_debug_phpt.trace"
-done!
+string(32) "t:O,/tmp/mysqli_debug_phpt.trace"
+done!
\ No newline at end of file
--TEST--
mysqli_error()
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
<?php
include "connect.inc";
- $tmp = NULL;
+ $tmp = NULL;
$link = NULL;
if (!is_null($tmp = @mysqli_error()))
print "done!";
?>
--EXPECTF--
-unicode(41) "Table 'няма_такава_таблица' doesn't exist"
+%unicode|string%(%d) "Table 'няма_такава_таблица' doesn't exist"
Warning: mysqli_error(): Couldn't fetch mysqli in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
[0]=>
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
}
[007]
[0]=>
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
}
[008]
[0]=>
array(4) {
[0]=>
- unicode(1) "1"
- [u"id"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
- [u"label"]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(4) {
[0]=>
- unicode(1) "2"
- [u"id"]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
- [u"label"]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[010]
array(2) {
[0]=>
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
- [u"id"]=>
- unicode(1) "2"
- [u"label"]=>
- unicode(1) "b"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[011]
array(2) {
[0]=>
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
- [u"id"]=>
- unicode(1) "2"
- [u"label"]=>
- unicode(1) "b"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[016]
[0]=>
array(11) {
[0]=>
- unicode(1) "1"
- [u"a"]=>
- unicode(1) "2"
+ %unicode|string%(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[2]=>
- unicode(1) "3"
- [u"c"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
[3]=>
- unicode(1) "4"
- [u"C"]=>
- unicode(1) "4"
+ %unicode|string%(1) "4"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
[4]=>
NULL
- [u"d"]=>
+ [%u|b%"d"]=>
NULL
[5]=>
- unicode(1) "1"
- [u"e"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
}
}
Warning: mysqli_fetch_all(): Mode can be only MYSQLI_FETCH_NUM, MYSQLI_FETCH_ASSOC or MYSQLI_FETCH_BOTH in %s on line %d
Warning: mysqli_fetch_array(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
[0]=>
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
}
[007]
[0]=>
array(2) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
}
[008]
[0]=>
array(4) {
[0]=>
- unicode(1) "1"
- [u"id"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
- [u"label"]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(4) {
[0]=>
- unicode(1) "2"
- [u"id"]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
- [u"label"]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[010]
array(2) {
[0]=>
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
- [u"id"]=>
- unicode(1) "2"
- [u"label"]=>
- unicode(1) "b"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[011]
array(2) {
[0]=>
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[1]=>
array(2) {
- [u"id"]=>
- unicode(1) "2"
- [u"label"]=>
- unicode(1) "b"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b"
}
}
[016]
[0]=>
array(11) {
[0]=>
- unicode(1) "1"
- [u"a"]=>
- unicode(1) "2"
+ %unicode|string%(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[2]=>
- unicode(1) "3"
- [u"c"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
[3]=>
- unicode(1) "4"
- [u"C"]=>
- unicode(1) "4"
+ %unicode|string%(1) "4"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
[4]=>
NULL
- [u"d"]=>
+ [%u|b%"d"]=>
NULL
[5]=>
- unicode(1) "1"
- [u"e"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
}
}
Warning: mysqli_result::fetch_all(): Mode can be only MYSQLI_FETCH_NUM, MYSQLI_FETCH_ASSOC or MYSQLI_FETCH_BOTH in %s on line %d
Warning: mysqli_result::fetch_array(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
[005]
array(4) {
[0]=>
- unicode(1) "1"
- [u"id"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
- [u"label"]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[006]
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
[007]
array(4) {
[0]=>
- unicode(1) "3"
- [u"id"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "3"
[1]=>
- unicode(1) "c"
- [u"label"]=>
- unicode(1) "c"
+ %unicode|string%(1) "c"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "c"
}
[008]
array(2) {
- [u"id"]=>
- unicode(1) "4"
- [u"label"]=>
- unicode(1) "d"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "d"
}
[009]
array(4) {
[0]=>
- unicode(1) "5"
- [u"id"]=>
- unicode(1) "5"
+ %unicode|string%(1) "5"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "5"
[1]=>
- unicode(1) "e"
- [u"label"]=>
- unicode(1) "e"
+ %unicode|string%(1) "e"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "e"
}
[011]
array(11) {
[0]=>
- unicode(1) "1"
- [u"a"]=>
- unicode(1) "2"
+ %unicode|string%(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[2]=>
- unicode(1) "3"
- [u"c"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
[3]=>
- unicode(1) "4"
- [u"C"]=>
- unicode(1) "4"
+ %unicode|string%(1) "4"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
[4]=>
NULL
- [u"d"]=>
+ [%u|b%"d"]=>
NULL
[5]=>
- unicode(1) "1"
- [u"e"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
}
Warning: mysqli_fetch_array(): The result type should be either MYSQLI_NUM, MYSQLI_ASSOC or MYSQLI_BOTH in %s on line %d
Warning: mysqli_fetch_array(): The result type should be either MYSQLI_NUM, MYSQLI_ASSOC or MYSQLI_BOTH in %s on line %d
Warning: mysqli_fetch_array(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
--EXPECTF--
[002]
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[004]
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
-done!
+done!
\ No newline at end of file
[005]
array(4) {
[0]=>
- unicode(1) "1"
- [u"id"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
- [u"label"]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[006]
array(2) {
[0]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
}
[007]
array(4) {
[0]=>
- unicode(1) "3"
- [u"id"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "3"
[1]=>
- unicode(1) "c"
- [u"label"]=>
- unicode(1) "c"
+ %unicode|string%(1) "c"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "c"
}
[008]
array(2) {
- [u"id"]=>
- unicode(1) "4"
- [u"label"]=>
- unicode(1) "d"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "d"
}
[009]
array(4) {
[0]=>
- unicode(1) "5"
- [u"id"]=>
- unicode(1) "5"
+ %unicode|string%(1) "5"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "5"
[1]=>
- unicode(1) "e"
- [u"label"]=>
- unicode(1) "e"
+ %unicode|string%(1) "e"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "e"
}
[011]
array(11) {
[0]=>
- unicode(1) "1"
- [u"a"]=>
- unicode(1) "2"
+ %unicode|string%(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
[1]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
[2]=>
- unicode(1) "3"
- [u"c"]=>
- unicode(1) "3"
+ %unicode|string%(1) "3"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
[3]=>
- unicode(1) "4"
- [u"C"]=>
- unicode(1) "4"
+ %unicode|string%(1) "4"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
[4]=>
NULL
- [u"d"]=>
+ [%u|b%"d"]=>
NULL
[5]=>
- unicode(1) "1"
- [u"e"]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
}
Warning: mysqli_result::fetch_array(): The result type should be either MYSQLI_NUM, MYSQLI_ASSOC or MYSQLI_BOTH in %s on line %d
Warning: mysqli_result::fetch_array(): The result type should be either MYSQLI_NUM, MYSQLI_ASSOC or MYSQLI_BOTH in %s on line %d
Warning: mysqli_result::fetch_array(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
--EXPECTF--
[005]
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[006]
NULL
[008]
array(15) {
- [u"a"]=>
- unicode(1) "2"
- [u"c"]=>
- unicode(1) "3"
- [u"C"]=>
- unicode(1) "4"
- [u"d"]=>
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"d"]=>
NULL
- [u"e"]=>
- unicode(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
[-1]=>
- unicode(1) "5"
+ %unicode|string%(1) "5"
[-10]=>
- unicode(1) "6"
+ %unicode|string%(1) "6"
[-100]=>
- unicode(1) "7"
+ %unicode|string%(1) "7"
[-1000]=>
- unicode(1) "8"
+ %unicode|string%(1) "8"
[10000]=>
- unicode(1) "9"
+ %unicode|string%(1) "9"
[100000]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
[1000000]=>
- unicode(1) "b"
+ %unicode|string%(1) "b"
[9]=>
- unicode(1) "d"
- [u"01"]=>
- unicode(1) "e"
- [u"-02"]=>
- unicode(1) "f"
+ %unicode|string%(1) "d"
+ [%u|b%"01"]=>
+ %unicode|string%(1) "e"
+ [%u|b%"-02"]=>
+ %unicode|string%(1) "f"
}
Warning: mysqli_fetch_assoc(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
[002]
array(2) {
[1]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[004]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[006]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[008]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[011]
array(2) {
[1]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[014]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %s(1) "1"
[2]=>
- unicode(1) "2"
+ %s(1) "2"
}
[017]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
[017]
array(2) {
- [u"a"]=>
- unicode(1) "1"
+ [%u|b%"a"]=>
+ %unicode|string%(1) "1"
[2]=>
- unicode(1) "2"
+ %unicode|string%(1) "2"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
[003]
array(3) {
- [u"Андрей Христов"]=>
- unicode(1) "1"
- [u"Улф Вендел"]=>
- unicode(1) "2"
- [u"Георг Рихтер"]=>
- unicode(1) "3"
+ [%u|b%"Андрей Христов"]=>
+ %unicode|string%(%r[1|3]%r) "1"
+ [%u|b%"Улф Вендел"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"Георг Рихтер"]=>
+ %unicode|string%(1) "3"
}
[009]
array(3) {
- [u"id"]=>
- unicode(1) "4"
- [u"име"]=>
- unicode(6) "Andrey"
- [u"фамилия"]=>
- unicode(7) "Hristov"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"име"]=>
+ %unicode|string%(6) "Andrey"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(7) "Hristov"
}
array(3) {
- [u"id"]=>
- unicode(1) "7"
- [u"име"]=>
- unicode(3) "安德烈"
- [u"фамилия"]=>
- unicode(7) "Hristov"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "7"
+ [%u|b%"име"]=>
+ %unicode|string%(9) "安德烈"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(7) "Hristov"
}
array(3) {
- [u"id"]=>
- unicode(1) "5"
- [u"име"]=>
- unicode(5) "Georg"
- [u"фамилия"]=>
- unicode(7) "Richter"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "5"
+ [%u|b%"име"]=>
+ %unicode|string%(5) "Georg"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(7) "Richter"
}
array(3) {
- [u"id"]=>
- unicode(1) "8"
- [u"име"]=>
- unicode(3) "格奥尔"
- [u"фамилия"]=>
- unicode(7) "Richter"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "8"
+ [%u|b%"име"]=>
+ %unicode|string%(9) "格奥尔"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(7) "Richter"
}
array(3) {
- [u"id"]=>
- unicode(1) "6"
- [u"име"]=>
- unicode(3) "Ulf"
- [u"фамилия"]=>
- unicode(6) "Wendel"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "6"
+ [%u|b%"име"]=>
+ %unicode|string%(3) "Ulf"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(6) "Wendel"
}
array(3) {
- [u"id"]=>
- unicode(1) "9"
- [u"име"]=>
- unicode(3) "乌尔夫"
- [u"фамилия"]=>
- unicode(6) "Wendel"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "9"
+ [%u|b%"име"]=>
+ %unicode|string%(9) "乌尔夫"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(6) "Wendel"
}
array(3) {
- [u"id"]=>
- unicode(1) "3"
- [u"име"]=>
- unicode(3) "Улф"
- [u"фамилия"]=>
- unicode(6) "Вендел"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "3"
+ [%u|b%"име"]=>
+ %unicode|string%(6) "Улф"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(12) "Вендел"
}
array(3) {
- [u"id"]=>
- unicode(1) "2"
- [u"име"]=>
- unicode(5) "Георг"
- [u"фамилия"]=>
- unicode(6) "Рихтер"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"име"]=>
+ %unicode|string%(10) "Георг"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(12) "Рихтер"
}
array(3) {
- [u"id"]=>
- unicode(1) "1"
- [u"име"]=>
- unicode(6) "Андрей"
- [u"фамилия"]=>
- unicode(7) "Христов"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"име"]=>
+ %unicode|string%(12) "Андрей"
+ [%u|b%"фамилия"]=>
+ %unicode|string%(14) "Христов"
}
-done!
+done!
\ No newline at end of file
--EXPECTF--
[005]
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
[006]
NULL
[008]
array(5) {
- [u"a"]=>
- unicode(1) "2"
- [u"c"]=>
- unicode(1) "3"
- [u"C"]=>
- unicode(1) "4"
- [u"d"]=>
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"d"]=>
NULL
- [u"e"]=>
- unicode(1) "1"
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
}
Warning: mysqli_result::fetch_assoc(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "ID"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "ID"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
int(49155)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(5) "label"
- [u"orgname"]=>
- unicode(5) "label"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"orgname"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(1)
+ [%u|b%"charsetnr"]=>
+ int(8)
+ [%u|b%"flags"]=>
int(0)
- [u"type"]=>
+ [%u|b%"type"]=>
int(254)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
bool(false)
Warning: mysqli_fetch_field(): Couldn't fetch mysqli_result in %s on line %d
array(1) {
- [u"_default_test"]=>
- unicode(1) "2"
+ [%u|b%"_default_test"]=>
+ %unicode|string%(1) "2"
}
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(13) "_default_test"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(13) "_default_test"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(1)
- [u"length"]=>
+ [%u|b%"length"]=>
int(11)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(63)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(32769)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
-done!
+done!
\ No newline at end of file
Warning: mysqli_fetch_field_direct(): Field offset is invalid for resultset in %s on line %d
bool(false)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "ID"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "ID"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(%d)
- [u"length"]=>
+ [%u|b%"length"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(%d)
- [u"type"]=>
+ [%u|b%"type"]=>
int(%d)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(%d)
}
bool(false)
Warning: mysqli_fetch_field_direct(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
Warning: mysqli_result::fetch_field_direct(): Field offset is invalid for resultset in %s on line %d
bool(false)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "ID"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "ID"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(%d)
- [u"length"]=>
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
int(%d)
- [u"charsetnr"]=>
+ [%u|b%"flags"]=>
int(%d)
- [u"flags"]=>
+ [%u|b%"type"]=>
int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(%d)
}
bool(false)
Warning: mysqli_result::fetch_field_direct(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
$version = mysqli_get_server_version($link);
if ($version <= 50105) {
// TODO - check exact version!
-// $expected_flags = trim(str_replace('UNSIGNED', '', $expected_flags));
+ $expected_flags = trim(str_replace('UNSIGNED', '', $expected_flags));
}
default:
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "ID"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "ID"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
+ int(49155)
+ [%u|b%"type"]=>
+ int(3)
+ [%u|b%"decimals"]=>
int(0)
}
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(5) "label"
- [u"orgname"]=>
- unicode(5) "label"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"orgname"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(1)
+ [%u|b%"charsetnr"]=>
+ int(8)
+ [%u|b%"flags"]=>
+ int(0)
+ [%u|b%"type"]=>
+ int(254)
+ [%u|b%"decimals"]=>
int(0)
}
bool(false)
Warning: mysqli_result::fetch_field(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
MYSQLI_TYPE_DATETIME => array('DATETIME', '2007-08-20 18:42:01'),
MYSQLI_TYPE_YEAR => array('YEAR', '2007'),
MYSQLI_TYPE_ENUM => array('ENUM("everything", "is", "just", "wonderful")', 'is'),
- // MYSQLI_TYPE_SET => array("SET('I', 'smash', 'the')", 'I,smash,the'), - string
+ // MYSQLI_TYPE_SET => array('SET("I", "smash", "the")', 'I,smash,the'), - string
// MYSQLI_TYPE_TINY_BLOB => array("TINYBLOB", "I got a tiny blog"), - blob
// MYSQLI_TYPE_MEDIUM_BLOB => array("MEDIUMBLOB", "No blob for masses"), - blob
// MYSQLI_TYPE_LONG_BLOB => array("LONGBLOB", "Small is beautiful?"), - blob
MYSQLI_TYPE_VAR_STRING => array("VARCHAR(32768)", 'varchar'),
MYSQLI_TYPE_STRING => 'MYSQLI_TYPE_STRING - TODO add testing',
MYSQLI_TYPE_STRING => array('CHAR(1)', 'a'),
- MYSQLI_TYPE_STRING => array("SET('I', 'smash', 'the')", 'Will be converted to string although it is a SET...'),
+ MYSQLI_TYPE_STRING => array('SET("I", "smash", "the")', 'Will be converted to string although it is a SET...'),
MYSQLI_TYPE_NULL => 'MYSQLI_TYPE_NULL - TODO add testing',
MYSQLI_TYPE_NEWDATE => 'MYSQLI_TYPE_NEWDATE - TODO add testing',
MYSQLI_TYPE_INTERVAL => 'MYSQLI_TYPE_INTERVAL - TODO add testing',
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "ID"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "ID"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
+ int(49155)
+ [%u|b%"type"]=>
+ int(3)
+ [%u|b%"decimals"]=>
int(0)
}
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(5) "label"
- [u"orgname"]=>
- unicode(5) "label"
- [u"table"]=>
- unicode(4) "TEST"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"orgname"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "TEST"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(1)
+ [%u|b%"length"]=>
+ int(1)
+ [%u|b%"charsetnr"]=>
+ int(8)
+ [%u|b%"flags"]=>
int(0)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"type"]=>
+ int(254)
+ [%u|b%"decimals"]=>
int(0)
}
Warning: mysqli_fetch_fields(): Couldn't fetch mysqli_result in %s on line %d
-done!
+done!
\ No newline at end of file
--EXPECTF--
No exception with PHP:
object(mysqli_fetch_object_test)#%d (%d) {
- [%s"a"]=>
+ [%u|b%"a"]=>
NULL
- [%s"b"]=>
+ [%u|b%"b"]=>
NULL
}
[004]
array(3) {
[0]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
[1]=>
- unicode(1) "a"
+ %unicode|string%(1) "a"
[2]=>
- unicode(1) "1"
+ %unicode|string%(1) "1"
}
[005]
NULL
Warning: mysqli_fetch_row(): Couldn't fetch mysqli_result in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
var_dump($link->field_count);
var_dump(mysqli_field_count($link));
- if (!$res = mysqli_query($link, "SELECT NULL as _null, '' AS '', 'three' AS 'drei'"))
+ if (!$res = mysqli_query($link, 'SELECT NULL as _null, "" AS "", "three" AS "drei"'))
printf("[006] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
var_dump(mysqli_field_count($link));
mysqli_free_result($res);
Warning: mysqli_field_count(): Couldn't fetch mysqli in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
Warning: mysqli_field_seek(): Invalid field offset in %s on line %d
bool(false)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "id"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(0)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
+ int(49155)
+ [%u|b%"type"]=>
+ int(3)
+ [%u|b%"decimals"]=>
int(0)
}
bool(true)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "id"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(0)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
+ int(49155)
+ [%u|b%"type"]=>
+ int(3)
+ [%u|b%"decimals"]=>
int(0)
}
bool(true)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(5) "label"
- [u"orgname"]=>
- unicode(5) "label"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"orgname"]=>
+ %unicode|string%(5) "label"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(0)
+ [%u|b%"length"]=>
+ int(1)
+ [%u|b%"charsetnr"]=>
+ int(8)
+ [%u|b%"flags"]=>
+ int(0)
+ [%u|b%"type"]=>
+ int(254)
+ [%u|b%"decimals"]=>
int(0)
}
int(2)
bool(false)
bool(true)
object(stdClass)#3 (11) {
- [u"name"]=>
- unicode(5) "_null"
- [u"orgname"]=>
- unicode(0) ""
- [u"table"]=>
- unicode(0) ""
- [u"orgtable"]=>
- unicode(0) ""
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(5) "_null"
+ [%u|b%"orgname"]=>
+ %unicode|string%(0) ""
+ [%u|b%"table"]=>
+ %unicode|string%(0) ""
+ [%u|b%"orgtable"]=>
+ %unicode|string%(0) ""
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(0)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(63)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(32896)
- [u"type"]=>
+ [%u|b%"type"]=>
int(6)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
Warning: mysqli_field_seek(): Couldn't fetch mysqli_result in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
NULL
int(0)
object(stdClass)#%d (11) {
- [u"name"]=>
- unicode(2) "id"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
- int(%d)
- [u"length"]=>
- int(%d)
- [u"charsetnr"]=>
- int(%d)
- [u"flags"]=>
- int(%d)
- [u"type"]=>
- int(%d)
- [u"decimals"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
+ int(0)
+ [%u|b%"length"]=>
+ int(11)
+ [%u|b%"charsetnr"]=>
+ int(63)
+ [%u|b%"flags"]=>
+ int(49155)
+ [%u|b%"type"]=>
+ int(3)
+ [%u|b%"decimals"]=>
int(0)
}
bool(false)
Warning: mysqli_field_tell(): Couldn't fetch mysqli_result in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
array(1) {
- [u"message"]=>
- unicode(20) "dumped by the parent"
+ ["message"]=>
+ string(20) "dumped by the parent"
}
child start
child array
child array
parent conti
child stop
-done!
+done!
\ No newline at end of file
if (!function_exists('mysqli_get_cache_stats')) {
die("skip only available with mysqlnd");
}
-if (ini_get("unicode.semantics")) {
- die("skip: zval cache works now only in non-unicode mode");
-}
?>
--FILE--
<?php
?>
--EXPECTF--
array(7) {
- [u"put_hits"]=>
+ [%u|b%"put_hits"]=>
int(0)
- [u"put_misses"]=>
+ [%u|b%"put_misses"]=>
int(0)
- [u"get_hits"]=>
+ [%u|b%"get_hits"]=>
int(0)
- [u"get_misses"]=>
+ [%u|b%"get_misses"]=>
int(0)
- [u"size"]=>
+ [%u|b%"size"]=>
int(%d)
- [u"free_items"]=>
+ [%u|b%"free_items"]=>
int(%d)
- [u"references"]=>
+ [%u|b%"references"]=>
int(%d)
}
-done!
+done!
\ No newline at end of file
if (!function_exists('mysqli_get_cache_stats')) {
die("skip only available with mysqlnd");
}
-if (ini_get("unicode.semantics")) {
- die("skip: zval cache works now only in non-unicode mode");
-}
?>
--FILE--
<?php
if (!($character_set_connection = $tmp['charset']) || !($collation_connection = $tmp['collation']))
printf("[008] Cannot determine current character set and collation\n");
- if (!$res = mysqli_query($link, $sql = sprintf("SHOW CHARACTER SET LIKE '%s'", $character_set_connection)))
+ if (!$res = mysqli_query($link, $sql = sprintf('SHOW CHARACTER SET LIKE "%s"', $character_set_connection)))
printf("[009] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$tmp = mysqli_fetch_assoc($res);
if (empty($tmp))
$maxlen = (isset($tmp['Maxlen'])) ? $tmp['Maxlen'] : '';
$comment = (isset($tmp['Description'])) ? $tmp['Description'] : '';
- if (!$res = mysqli_query($link, sprintf("SHOW COLLATION LIKE '%s'", $collation_connection)))
+ if (!$res = mysqli_query($link, sprintf('SHOW COLLATION LIKE "%s"', $collation_connection)))
printf("[011] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$tmp = mysqli_fetch_assoc($res);
mysqli_free_result($res);
if (!($id = $tmp['Id']))
printf("[012] Cannot fetch Id/Number, test will fail\n");
- if (!$res = mysqli_query($link, sprintf("SHOW VARIABLES LIKE 'character_sets_dir'")))
+ if (!$res = mysqli_query($link, sprintf('SHOW VARIABLES LIKE "character_sets_dir"')))
printf("[013] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$tmp = mysqli_fetch_assoc($res);
mysqli_free_result($res);
mysqli_get_client_stats_assert_eq('copy_on_write_saved', $new_info, $info, $test_counter);
mysqli_get_client_stats_assert_eq('copy_on_write_performed', $new_info, $info, $test_counter);
mysqli_get_client_stats_assert_eq('command_buffer_too_small', $new_info, $info, $test_counter);
- // This is not a mistake that I use string(1) "1" here! Andrey did not go for int to avoid any
+ // This is not a mistake that I use %unicode|string%(1) "1" here! Andrey did not go for int to avoid any
// issues for very large numbers and 32 vs. 64bit systems
mysqli_get_client_stats_assert_eq('connect_success', $new_info, "1", $test_counter);
mysqli_get_client_stats_assert_eq('connect_failure', $new_info, $info, $test_counter);
?>
--EXPECTF--
array(119) {
- [u"bytes_sent"]=>
- unicode(1) "0"
- [u"bytes_received"]=>
- unicode(1) "0"
- [u"packets_sent"]=>
- unicode(1) "0"
- [u"packets_received"]=>
- unicode(1) "0"
- [u"protocol_overhead_in"]=>
- unicode(1) "0"
- [u"protocol_overhead_out"]=>
- unicode(1) "0"
- [u"bytes_received_ok_packet"]=>
- unicode(1) "0"
- [u"bytes_received_eof_packet"]=>
- unicode(1) "0"
- [u"bytes_received_rset_header_packet"]=>
- unicode(1) "0"
- [u"bytes_received_rset_field_meta_packet"]=>
- unicode(1) "0"
- [u"bytes_received_rset_row_packet"]=>
- unicode(1) "0"
- [u"bytes_received_prepare_response_packet"]=>
- unicode(1) "0"
- [u"bytes_received_change_user_packet"]=>
- unicode(1) "0"
- [u"packets_sent_command"]=>
- unicode(1) "0"
- [u"packets_received_ok"]=>
- unicode(1) "0"
- [u"packets_received_eof"]=>
- unicode(1) "0"
- [u"packets_received_rset_header"]=>
- unicode(1) "0"
- [u"packets_received_rset_field_meta"]=>
- unicode(1) "0"
- [u"packets_received_rset_row"]=>
- unicode(1) "0"
- [u"packets_received_prepare_response"]=>
- unicode(1) "0"
- [u"packets_received_change_user"]=>
- unicode(1) "0"
- [u"result_set_queries"]=>
- unicode(1) "0"
- [u"non_result_set_queries"]=>
- unicode(1) "0"
- [u"no_index_used"]=>
- unicode(1) "0"
- [u"bad_index_used"]=>
- unicode(1) "0"
- [u"slow_queries"]=>
- unicode(1) "0"
- [u"buffered_sets"]=>
- unicode(1) "0"
- [u"unbuffered_sets"]=>
- unicode(1) "0"
- [u"ps_buffered_sets"]=>
- unicode(1) "0"
- [u"ps_unbuffered_sets"]=>
- unicode(1) "0"
- [u"flushed_normal_sets"]=>
- unicode(1) "0"
- [u"flushed_ps_sets"]=>
- unicode(1) "0"
- [u"ps_prepared_never_executed"]=>
- unicode(1) "0"
- [u"ps_prepared_once_executed"]=>
- unicode(1) "0"
- [u"rows_fetched_from_server_normal"]=>
- unicode(1) "0"
- [u"rows_fetched_from_server_ps"]=>
- unicode(1) "0"
- [u"rows_buffered_from_client_normal"]=>
- unicode(1) "0"
- [u"rows_buffered_from_client_ps"]=>
- unicode(1) "0"
- [u"rows_fetched_from_client_normal_buffered"]=>
- unicode(1) "0"
- [u"rows_fetched_from_client_normal_unbuffered"]=>
- unicode(1) "0"
- [u"rows_fetched_from_client_ps_buffered"]=>
- unicode(1) "0"
- [u"rows_fetched_from_client_ps_unbuffered"]=>
- unicode(1) "0"
- [u"rows_fetched_from_client_ps_cursor"]=>
- unicode(1) "0"
- [u"rows_skipped_normal"]=>
- unicode(1) "0"
- [u"rows_skipped_ps"]=>
- unicode(1) "0"
- [u"copy_on_write_saved"]=>
- unicode(1) "0"
- [u"copy_on_write_performed"]=>
- unicode(1) "0"
- [u"command_buffer_too_small"]=>
- unicode(1) "0"
- [u"connect_success"]=>
- unicode(1) "0"
- [u"connect_failure"]=>
- unicode(1) "0"
- [u"connection_reused"]=>
- unicode(1) "0"
- [u"reconnect"]=>
- unicode(1) "0"
- [u"pconnect_success"]=>
- unicode(1) "0"
- [u"active_connections"]=>
- unicode(1) "0"
- [u"active_persistent_connections"]=>
- unicode(1) "0"
- [u"explicit_close"]=>
- unicode(1) "0"
- [u"implicit_close"]=>
- unicode(1) "0"
- [u"disconnect_close"]=>
- unicode(1) "0"
- [u"in_middle_of_command_close"]=>
- unicode(1) "0"
- [u"explicit_free_result"]=>
- unicode(1) "0"
- [u"implicit_free_result"]=>
- unicode(1) "0"
- [u"explicit_stmt_close"]=>
- unicode(1) "0"
- [u"implicit_stmt_close"]=>
- unicode(1) "0"
- [u"mem_emalloc_count"]=>
- unicode(1) "0"
- [u"mem_emalloc_ammount"]=>
- unicode(1) "0"
- [u"mem_ecalloc_count"]=>
- unicode(1) "0"
- [u"mem_ecalloc_ammount"]=>
- unicode(1) "0"
- [u"mem_erealloc_count"]=>
- unicode(1) "0"
- [u"mem_erealloc_ammount"]=>
- unicode(1) "0"
- [u"mem_efree_count"]=>
- unicode(1) "0"
- [u"mem_malloc_count"]=>
- unicode(1) "0"
- [u"mem_malloc_ammount"]=>
- unicode(1) "0"
- [u"mem_calloc_count"]=>
- unicode(1) "0"
- [u"mem_calloc_ammount"]=>
- unicode(1) "0"
- [u"mem_realloc_count"]=>
- unicode(1) "0"
- [u"mem_realloc_ammount"]=>
- unicode(1) "0"
- [u"mem_free_count"]=>
- unicode(1) "0"
- [u"proto_text_fetched_null"]=>
- unicode(1) "0"
- [u"proto_text_fetched_bit"]=>
- unicode(1) "0"
- [u"proto_text_fetched_tinyint"]=>
- unicode(1) "0"
- [u"proto_text_fetched_short"]=>
- unicode(1) "0"
- [u"proto_text_fetched_int24"]=>
- unicode(1) "0"
- [u"proto_text_fetched_int"]=>
- unicode(1) "0"
- [u"proto_text_fetched_bigint"]=>
- unicode(1) "0"
- [u"proto_text_fetched_decimal"]=>
- unicode(1) "0"
- [u"proto_text_fetched_float"]=>
- unicode(1) "0"
- [u"proto_text_fetched_double"]=>
- unicode(1) "0"
- [u"proto_text_fetched_date"]=>
- unicode(1) "0"
- [u"proto_text_fetched_year"]=>
- unicode(1) "0"
- [u"proto_text_fetched_time"]=>
- unicode(1) "0"
- [u"proto_text_fetched_datetime"]=>
- unicode(1) "0"
- [u"proto_text_fetched_timestamp"]=>
- unicode(1) "0"
- [u"proto_text_fetched_unicode"]=>
- unicode(1) "0"
- [u"proto_text_fetched_blob"]=>
- unicode(1) "0"
- [u"proto_text_fetched_enum"]=>
- unicode(1) "0"
- [u"proto_text_fetched_set"]=>
- unicode(1) "0"
- [u"proto_text_fetched_geometry"]=>
- unicode(1) "0"
- [u"proto_text_fetched_other"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_null"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_bit"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_tinyint"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_short"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_int24"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_int"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_bigint"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_decimal"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_float"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_double"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_date"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_year"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_time"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_datetime"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_timestamp"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_unicode"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_blob"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_enum"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_set"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_geometry"]=>
- unicode(1) "0"
- [u"proto_binary_fetched_other"]=>
- unicode(1) "0"
+ [%u|b%"bytes_sent"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_sent"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"protocol_overhead_in"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"protocol_overhead_out"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_ok_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_eof_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_rset_header_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_rset_field_meta_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_rset_row_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_prepare_response_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bytes_received_change_user_packet"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_sent_command"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_ok"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_eof"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_rset_header"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_rset_field_meta"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_rset_row"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_prepare_response"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"packets_received_change_user"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"result_set_queries"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"non_result_set_queries"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"no_index_used"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"bad_index_used"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"slow_queries"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"buffered_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"unbuffered_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"ps_buffered_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"ps_unbuffered_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"flushed_normal_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"flushed_ps_sets"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"ps_prepared_never_executed"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"ps_prepared_once_executed"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_server_normal"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_server_ps"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_buffered_from_client_normal"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_buffered_from_client_ps"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_client_normal_buffered"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_client_normal_unbuffered"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_client_ps_buffered"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_client_ps_unbuffered"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_fetched_from_client_ps_cursor"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_skipped_normal"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"rows_skipped_ps"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"copy_on_write_saved"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"copy_on_write_performed"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"command_buffer_too_small"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"connect_success"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"connect_failure"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"connection_reused"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"reconnect"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"pconnect_success"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"active_connections"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"active_persistent_connections"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"explicit_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"implicit_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"disconnect_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"in_middle_of_command_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"explicit_free_result"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"implicit_free_result"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"explicit_stmt_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"implicit_stmt_close"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_emalloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_emalloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_ecalloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_ecalloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_erealloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_erealloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_efree_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_malloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_malloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_calloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_calloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_realloc_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_realloc_ammount"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"mem_free_count"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_null"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_bit"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_tinyint"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_short"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_int24"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_int"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_bigint"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_decimal"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_float"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_double"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_date"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_year"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_time"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_datetime"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_timestamp"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_string"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_blob"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_enum"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_set"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_geometry"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_text_fetched_other"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_null"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_bit"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_tinyint"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_short"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_int24"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_int"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_bigint"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_decimal"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_float"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_double"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_date"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_year"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_time"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_datetime"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_timestamp"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_string"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_blob"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_enum"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_set"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_geometry"]=>
+ %unicode|string%(1) "0"
+ [%u|b%"proto_binary_fetched_other"]=>
+ %unicode|string%(1) "0"
}
Testing buffered normal...
Testing buffered normal... - SELECT id, label FROM test
Testing unbuffered Prepared Statements... - fetching all
Testing unbuffered Prepared Statements... - fetching all but one
... done with fetch statistics
-done!
+done!
\ No newline at end of file
--TEST--
mysqli_info()
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
-require_once('skipifemb.inc');
+require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
require "table.inc";
- if (!$res = mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, 'a')"))
+ if (!$res = mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "a")'))
printf("[003] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
// NOTE: empty string, no multiple insert syntax
if (!is_string($tmp = mysqli_info($link)) || ('' != $tmp))
printf("[004] Expecting string/empty, got %s/%s\n", gettype($tmp), $tmp);
- if (!$res = mysqli_query($link, "INSERT INTO test(id, label) VALUES (101, 'a'), (102, 'b')"))
+ if (!$res = mysqli_query($link, 'INSERT INTO test(id, label) VALUES (101, "a"), (102, "b")'))
printf("[005] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!is_string($tmp = mysqli_info($link)) || ('' == $tmp))
printf("[006] Expecting string/any_non_empty, got %s/%s\n", gettype($tmp), $tmp);
- if (ini_get('unicode.semantics') && !is_unicode($tmp))
+ if ((version_compare(PHP_VERSION, '5.9.9', '>') == 1) && !is_unicode($tmp))
printf("[007] Expecting unicode, because unicode mode it on. Got binary string\n");
if (!$res = mysqli_query($link, 'INSERT INTO test(id, label) SELECT id + 200, label FROM test'))
if (!is_string($tmp = mysqli_info($link)) || ('' == $tmp))
printf("[010] Expecting string/any_non_empty, got %s/%s\n", gettype($tmp), $tmp);
- if (!$res = mysqli_query($link, "UPDATE test SET label = 'b' WHERE id >= 100"))
+ if (!$res = mysqli_query($link, 'UPDATE test SET label = "b" WHERE id >= 100'))
printf("[011] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!is_string($tmp = mysqli_info($link)) || ('' == $tmp))
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
printf("[001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s, [%d] %s\n",
$host, $user, $db, $port, $socket, mysqli_connect_errno(), mysqli_connect_error());
}
- if (!mysqli_query($link1, "SET @pcondisabled = 'Connection 1'"))
+ if (!mysqli_query($link1, 'SET @pcondisabled = "Connection 1"'))
printf("[002] Cannot set user variable to check if we got the same persistent connection, [%d] %s\n",
mysqli_errno($link1), mysqli_error($link1));
Warning: mysqli_connect(): Persistent connections are disabled. Downgrading to normal in %s on line %d
Connecction 1 - SELECT @pcondisabled -> 'Connection 1'
Connecction 2 - SELECT @pcondisabled -> ''
-done!
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
// opens a regular connection
require_once("table.inc");
- if (!$res = mysqli_query($link, "SELECT 'works..' as _desc"))
+ if (!$res = mysqli_query($link, 'SELECT "works.." as _desc'))
printf("[001] Cannot run query, [%d] %s\n",
mysqli_errno($link), mysqli_error($link));
printf("[002] Cannot open second regular connection, [%d] %s\n",
mysqli_connect_errno(), mysqli_connect_error());
- if (!$res = mysqli_query($link2, "SELECT 'works...' as _desc"))
+ if (!$res = mysqli_query($link2, 'SELECT "works..." as _desc'))
printf("[003] Cannot run query, [%d] %s\n",
mysqli_errno($link2), mysqli_error($link2));
$host, $user, $db, $port, $socket,
mysqli_connect_errno(), mysqli_connect_error());
- if (!$res = mysqli_query($plink, "SELECT 'works...' as _desc"))
+ if (!$res = mysqli_query($plink, 'SELECT "works..." as _desc'))
printf("[005] Cannot run query, [%d] %s\n",
mysqli_errno($plink), mysqli_error($plink));
$host, $user, $db, $port, $socket,
mysqli_connect_errno(), mysqli_connect_error());
- if (!$res = mysqli_query($plink2, "SELECT 'works...' as _desc"))
+ if (!$res = mysqli_query($plink2, 'SELECT "works..." as _desc'))
printf("[007] Cannot run query, [%d] %s\n",
mysqli_errno($plink2), mysqli_error($plink2));
$host, $user, $db, $port, $socket,
mysqli_connect_errno(), mysqli_connect_error());
- if (!$res = mysqli_query($plink3, "SELECT 'works...' as _desc"))
+ if (!$res = mysqli_query($plink3, 'SELECT "works..." as _desc'))
printf("[009] Cannot run query, [%d] %s\n",
mysqli_errno($plink2), mysqli_error($plink2));
Persistent connection 1 - 'works...'
Persistent connection 2 - 'works...'
Persistent connection 3 - 'works...'
-done!
+done!
\ No newline at end of file
die(sprintf("skip Cannot connect [%d] %s", mysqli_connect_errno(), mysqli_connect_error()));
mysqli_query($link, 'DROP USER pcontest');
- if (!mysqli_query($link, 'CREATE USER pcontest IDENTIFIED BY "pcontest"')) {
+ mysqli_query($link, 'DROP USER pcontest@localhost');
+ if (!mysqli_query($link, 'CREATE USER pcontest@"%" IDENTIFIED BY "pcontest"') ||
+ !mysqli_query($link, 'CREATE USER pcontest@localhost IDENTIFIED BY "pcontest"')) {
printf("skip Cannot create second DB user [%d] %s", mysqli_errno($link), mysqli_error($link));
mysqli_close($link);
- die();
+ die("skip CREATE USER failed");
}
// we might be able to specify the host using CURRENT_USER(), but...
- if (!mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO pcontest@'%%'", $db))) {
+ if (!mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO pcontest@'%%'", $db)) ||
+ !mysqli_query($link, sprintf("GRANT SELECT ON TABLE %s.test TO pcontest@'localhost'", $db))) {
printf("skip Cannot GRANT SELECT to second DB user [%d] %s", mysqli_errno($link), mysqli_error($link));
mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM pcontest');
+ mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM pcontest@localhost');
+ mysqli_query($link, 'DROP USER pcontest@localhost');
mysqli_query($link, 'DROP USER pcontest');
mysqli_close($link);
- die();
+ die("skip GRANT failed");
}
+
+ if (!($link_pcontest = @mysqli_connect($host, 'pcontest', 'pcontest', $db, $port, $socket))) {
+ die(":)");
+ mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM pcontest');
+ mysqli_query($link, 'REVOKE ALL PRIVILEGES, GRANT OPTION FROM pcontest@localhost');
+ mysqli_query($link, 'DROP USER pcontest@localhost');
+ mysqli_query($link, 'DROP USER pcontest');
+ mysqli_close($link);
+ die("skip CONNECT using new user failed");
+ }
mysqli_close($link);
?>
--INI--
!mysqli_query($link, 'FLUSH PRIVILEGES'))
printf("[005] Cannot change PW of second DB user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+ // change the password for the second DB user and kill the persistent connection
+ if (!mysqli_query($link, 'SET PASSWORD FOR pcontest@localhost = PASSWORD("newpass")') ||
+ !mysqli_query($link, 'FLUSH PRIVILEGES'))
+ printf("[006] Cannot change PW of second DB user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+
// persistent connections cannot be closed but only be killed
$pthread_id = mysqli_thread_id($plink);
if (!mysqli_query($link, sprintf('KILL %d', $pthread_id)))
- printf("[006] Cannot KILL persistent connection of second DB user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+ printf("[007] Cannot KILL persistent connection of second DB user, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
// give the server a second to really kill the thread
sleep(1);
if (!$res = mysqli_query($link, "SHOW FULL PROCESSLIST"))
- printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+ printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
$running_threads = array();
while ($row = mysqli_fetch_assoc($res))
mysqli_free_result($res);
if (isset($running_threads[$pthread_id]))
- printf("[008] Persistent connection has not been killed\n");
+ printf("[009] Persistent connection has not been killed\n");
// this fails and we have 0 (<= $num_plinks) connections
if ($plink = @mysqli_connect('p:' . $host, 'pcontest', 'pcontest', $db, $port, $socket))
- printf("[009] Can connect using the old password, [%d] %s\n",
+ printf("[010] Can connect using the old password, [%d] %s\n",
mysqli_connect_errno($link), mysqli_connect_error($link));
ob_start();
?>
--EXPECTF--
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
Warning: mysqli_connect(): Too many open persistent links (%d) in %s on line %d
-done!
+done!
\ No newline at end of file
--TEST--
-mysqli_pconnect() - reusing/caching persistent connections
+mysqli_pconnect() - reusing/caching persistent connections - TODO
--SKIPIF--
<?php
+die("skip TODO - we need to add a user level way to check if CHANGE_USER gets called by pconnect");
+
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
printf("[001] Cannot connect to the server using host=%s, user=%s, passwd=***, dbname=%s, port=%s, socket=%s, [%d] %s\n",
$host, $user, $db, $port, $socket, mysqli_connect_errno(), mysqli_connect_error());
}
- if (!mysqli_query($link1, "SET @pcondisabled = 'Connection 1'"))
+ if (!mysqli_query($link1, 'SET @pcondisabled = "Connection 1"'))
printf("[002] Cannot set user variable to check if we got the same persistent connection, [%d] %s\n",
mysqli_errno($link1), mysqli_error($link1));
printf("Connection 2 (no reuse) - Thread ID -> '%s'\n", $thread_id);
mysqli_free_result($res);
- if (!mysqli_query($link2, "SET @pcondisabled = 'Connection 2'"))
+ if (!mysqli_query($link2, 'SET @pcondisabled = "Connection 2"'))
printf("[006] Cannot set user variable to check if we got the same persistent connection, [%d] %s\n",
mysqli_errno($link2), mysqli_error($link2));
Connection 2 - SELECT @pcondisabled -> 'Connection 2'
Connection 2 (reuse) - SELECT @pcondisabled -> 'Connection 2'
Connection 2 (reuse) - Thread ID -> '%d'
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
array(1) {
- ["processed beofre killed"]=>
- string(1) "1"
+ [%u|b%"processed beofre killed"]=>
+ %unicode|string%(1) "1"
}
Fetching from thread %d...
array(1) {
[1]=>
- string(1) "1"
+ %unicode|string%(1) "1"
}
Warning: mysqli_reap_async_query(): GREET %s
'CREATE TABLE IF NOT EXISTS bogus(id INT)',
'SET @a = 1',
'SELECT * FROM test ORDER BY id ASC LIMIT 2',
- "INSERT INTO test(id, label) VALUES (100, 'z')",
+ 'INSERT INTO test(id, label) VALUES (100, "z")',
'SELECT * FROM test ORDER BY id ASC LIMIT 2',
'SELECT',
'UPDATE test SET id = 101 WHERE id > 3',
mysqli_real_query($link, "DROP PROCEDURE IF EXISTS p");
if (mysqli_real_query($link, 'CREATE PROCEDURE p(IN ver_in VARCHAR(25), OUT ver_out VARCHAR(25)) BEGIN SELECT ver_in INTO ver_out; END;')) {
$have_proc = true;
- $queries[] = "CALL p('myversion', @version)";
+ $queries[] = 'CALL p("myversion", @version)';
}
mysqli_close($link);
[003] 'UPDATE test SET id = 101 WHERE id > 3' caused 1062
[003] 'UPDATE_FIX test SET id = 101 WHERE id > 3' caused 1064
array(2) {
- ["id"]=>
- string(3) "100"
- ["label"]=>
- string(1) "z"
+ [%u|b%"id"]=>
+ %unicode|string%(3) "100"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "z"
}
[009] [2014] %s
done!
continue;
}
// WARNING: Due to the reference issue none of these should ever fire!
- foreach ($reject as $links) {
+ foreach ($reject as $link) {
printf("Connection %d was rejected...\n", mysqli_thread_id($link));
+ if (mysqli_thread_id($link) != $thread_id) {
+ printf("[006] Connector %d should have been rejected. But also %d has been rejected.",
+ $thread_id, mysqli_thread_id($link));
+ }
$processed++;
}
- foreach ($errors as $links) {
+ foreach ($errors as $link) {
printf("Connection %d has an error...\n", mysqli_thread_id($link));
$processed++;
}
}
} while ($processed < 2);
+ $ready = mysqli_poll($links, $errors, $reject, 0, 50000);
mysqli_close($mysqli1);
mysqli_close($mysqli2);
--EXPECTF--
bool(true)
bool(true)
-[002] The queries should have finished already
bool(true)
bool(true)
-[003] The queries should have finished already
bool(true)
bool(true)
bool(true)
Connection %d should be rejected...
-[005] The queries should have finished already
+Connection %d was rejected...
bool(true)
bool(true)
-Expected error:
-
-Warning: mysqli_poll(): No stream arrays were passed in %s on line %d
+Warning: mysqli_poll(): All arrays passed are clear in %s on line %d
done!
printf("[018] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
mysqli_stmt_close($stmt);
- if (!is_object(($stmt = mysqli_prepare($link, "DO GET_LOCK('testlock', 1)"))))
+ if (!is_object(($stmt = mysqli_prepare($link, 'DO GET_LOCK("testlock", 1)'))))
printf("[019] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
mysqli_stmt_close($stmt);
--TEST--
mysqli_query()
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
-require_once('skipifemb.inc');
+require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
if (false !== ($tmp = mysqli_query($link, 'THIS IS NOT SQL')))
printf("[004] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
- if (false !== ($tmp = mysqli_query($link, "SELECT 'this is sql but with backslash g'\g")))
+ if (false !== ($tmp = mysqli_query($link, 'SELECT "this is sql but with backslash g"\g')))
printf("[005] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
if ((0 === mysqli_errno($link)) || ('' == mysqli_error($link)))
printf("[006] mysqli_errno()/mysqli_error should return some error\n");
- if (!$res = mysqli_query($link, "SELECT 'this is sql but with semicolon' AS valid ; "))
+ if (!$res = mysqli_query($link, 'SELECT "this is sql but with semicolon" AS valid ; '))
printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
var_dump(mysqli_fetch_assoc($res));
mysqli_free_result($res);
- if (!$res = mysqli_query($link, "SELECT 'a' AS ''"))
+ if (!$res = mysqli_query($link, 'SELECT "a" AS ""'))
printf("[007a] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
var_dump($tmp = mysqli_fetch_assoc($res));
var_dump($tmp[""]);
mysqli_free_result($res);
- if (false !== ($res = mysqli_query($link, "SELECT 'this is sql but with semicolon' AS valid ; SHOW VARIABLES")))
+ if (false !== ($res = mysqli_query($link, 'SELECT "this is sql but with semicolon" AS valid ; SHOW VARIABLES')))
printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (mysqli_get_server_version($link) > 50000) {
?>
--EXPECTF--
array(1) {
- [u"valid"]=>
- unicode(30) "this is sql but with semicolon"
+ [%u|b%"valid"]=>
+ %unicode|string%(30) "this is sql but with semicolon"
}
array(1) {
- [u""]=>
- unicode(1) "a"
+ [%u|b%""]=>
+ %unicode|string%(1) "a"
}
-unicode(1) "a"
+%unicode|string%(1) "a"
Warning: mysqli_query(): Couldn't fetch mysqli in %s on line %d
-done!
+done!
\ No newline at end of file
if (!mysqli_query($link, 'CALL p(@version)'))
printf("[011] Cannot call SP, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_query($link, "SET @version = 'unknown'"))
+ if (!mysqli_query($link, 'SET @version = "unknown"'))
printf("[012] Cannot reset user variable, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!mysqli_query($link, 'CALL p(@version)'))
if (mysqli_real_query($link, 'CREATE PROCEDURE p(IN ver_in VARCHAR(25), OUT ver_out VARCHAR(25)) BEGIN SELECT ver_in INTO ver_out; END;')) {
/* no result set, one input, one output parameter */
- if (!mysqli_query($link, "CALL p('myversion', @version)"))
+ if (!mysqli_query($link, 'CALL p("myversion", @version)'))
printf("[018] Cannot call SP, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_query($link, "SET @version = 'unknown'"))
+ if (!mysqli_query($link, 'SET @version = "unknown"'))
printf("[019] Cannot reset user variable, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_query($link, "CALL p('myversion', @version)"))
+ if (!mysqli_query($link, 'CALL p("myversion", @version)'))
printf("[020] Cannot call SP, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!$res = mysqli_query($link, 'SELECT @version as _vers'))
?>
--EXPECTF--
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
array(2) {
- [u"id"]=>
- unicode(1) "1"
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
array(1) {
- [u"id"]=>
- unicode(1) "1"
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
}
-done!
+done!
\ No newline at end of file
if (false !== ($tmp = mysqli_query($link, 'това не е ескюел')))
printf("[004] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
- if (false !== ($tmp = mysqli_query($link, "SELECT 'това е ескюел, но със обратна наклонена и g'\g")))
+ if (false !== ($tmp = mysqli_query($link, 'SELECT "това е ескюел, но със обратна наклонена и g"\g')))
printf("[005] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
if ((0 === mysqli_errno($link)) || ('' == mysqli_error($link)))
printf("[006] mysqli_errno()/mysqli_error should return some error\n");
- if (!$res = mysqli_query($link, "SELECT 'това ескюел, но с точка и запетая' AS правилен ; "))
+ if (!$res = mysqli_query($link, 'SELECT "това ескюел, но с точка и запетая" AS правилен ; '))
printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
var_dump(mysqli_fetch_assoc($res));
mysqli_free_result($res);
- if (false !== ($res = mysqli_query($link, "SELECT 'това ескюел, но с точка и запетая' AS правилен ; SHOW VARIABLES")))
+ if (false !== ($res = mysqli_query($link, 'SELECT "това ескюел, но с точка и запетая" AS правилен ; SHOW VARIABLES')))
printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (mysqli_get_server_version($link) > 50000) {
?>
--EXPECTF--
array(1) {
- [u"правилен"]=>
- unicode(33) "това ескюел, но с точка и запетая"
+ [%u|b%"правилен"]=>
+ %unicode|string%(%d) "това ескюел, но с точка и запетая"
}
Warning: mysqli_query(): Couldn't fetch mysqli in %s on line %d
-done!
+done!
\ No newline at end of file
--EXPECTF--
Warning: mysqli_real_connect(): (%d/%d): Access denied for user '%s'@'%s' (using password: YES) in %s on line %d
object(mysqli)#%d (%d) {
- [u"affected_rows"]=>
+ [%u|b%"affected_rows"]=>
NULL
- [u"client_info"]=>
- unicode(%d) "%s"
- [u"client_version"]=>
+ [%u|b%"client_info"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"client_version"]=>
int(%d)
- [u"connect_errno"]=>
+ [%u|b%"connect_errno"]=>
int(%d)
- [u"connect_error"]=>
- unicode(%d) "%s"
- [u"errno"]=>
+ [%u|b%"connect_error"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"errno"]=>
int(%d)
- [u"error"]=>
- unicode(%d) "%s"
- [u"field_count"]=>
+ [%u|b%"error"]=>
+ %unicode|string%(%d) "%s"
+ [%u|b%"field_count"]=>
NULL
- [u"host_info"]=>
+ [%u|b%"host_info"]=>
NULL
- [u"info"]=>
+ [%u|b%"info"]=>
NULL
- [u"insert_id"]=>
+ [%u|b%"insert_id"]=>
NULL
- [u"server_info"]=>
+ [%u|b%"server_info"]=>
NULL
- [u"server_version"]=>
+ [%u|b%"server_version"]=>
NULL
- [u"sqlstate"]=>
+ [%u|b%"sqlstate"]=>
NULL
- [u"protocol_version"]=>
+ [%u|b%"protocol_version"]=>
NULL
- [u"thread_id"]=>
+ [%u|b%"thread_id"]=>
NULL
- [u"warning_count"]=>
+ [%u|b%"warning_count"]=>
NULL
}
done!
if ("§ä¨ì¥H¤U¤º®e\\0§ä¨ì¥H¤U¤º®e" !== ($tmp = mysqli_real_escape_string($link, "§ä¨ì¥H¤U¤º®e" . chr(0) . "§ä¨ì¥H¤U¤º®e")))
printf("[009] Expecting %s, got %s\n", "§ä¨ì¥H¤U¤º®e\\0§ä¨ì¥H¤U¤º®e", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '§ä')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "§ä")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
if ("¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï\\0¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï" !== ($tmp = mysqli_real_escape_string($link, "¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï" . chr(0) . "¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï")))
printf("[009] Expecting %s, got %s\n", "¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï\\0¤³¤ÎÁȤ߹ç¤ï¤»¤Ç¤Ï", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '¤³')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "¤³")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
if ("±Ç´ë¼º\\0±Ç´ë¼º" !== ($tmp = mysqli_real_escape_string($link, "±Ç´ë¼º" . chr(0) . "±Ç´ë¼º")))
printf("[009] Expecting %s, got %s\n", "±Ç´ë¼º\\0±Ç´ë¼º", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '±Ç')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "±Ç")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
if ("Ê×ÏÈ\\0Ê×ÏÈ" !== ($tmp = mysqli_real_escape_string($link, "Ê×ÏÈ" . chr(0) . "Ê×ÏÈ")))
printf("[009] Expecting %s, got %s\n", "Ê×ÏÈ\\0Ê×ÏÈ", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, 'Ê×')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "Ê×")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
mysqli_real_escape_string() - gbk
--SKIPIF--
<?php
-if (ini_get('unicode.semantics'))
- die("skip Test cannot be run in unicode mode");
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip set character set not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
+}
require_once('skipif.inc');
require_once('skipifemb.inc');
}
if (!mysqli_set_charset($link, 'gbk'))
die(sprintf("skip Cannot set charset 'gbk'"));
+
mysqli_close($link);
?>
--FILE--
if ("�İ汾\\0�İ汾" !== ($tmp = mysqli_real_escape_string($link, "�İ汾" . chr(0) . "�İ汾")))
printf("[009] Expecting %s, got %s\n", "�İ汾\\0�İ汾", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '��')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "��")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
array(1) {
- [u"label"]=>
- unicode(1) "\"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "\"
}
-done!
+done!
\ No newline at end of file
mysqli_real_escape_string() - sjis
--SKIPIF--
<?php
-if (ini_get('unicode.semantics'))
- die("skip Test cannot be run in unicode mode");
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip set character set not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
+}
require_once('skipif.inc');
require_once('skipifemb.inc');
if ("?p??\\0?p??" !== ($tmp = mysqli_real_escape_string($link, "?p??" . chr(0) . "?p??")))
printf("[009] Expecting %s, got %s\n", "?p??\\0?p??", $tmp);
- var_dump(mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, '?p')"));
+ var_dump(mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "?p")'));
mysqli_close($link);
print "done!";
--EXPECTF--
bool(true)
bool(true)
-done!
+done!
\ No newline at end of file
--TEST--
mysqli_real_query()
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
require_once('skipifconnectfailure.inc');
?>
if (false !== ($tmp = mysqli_real_query($link, 'THIS IS NOT SQL')))
printf("[004] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
- if (false !== ($tmp = mysqli_real_query($link, "SELECT 'this is sql but with backslash g'\g")))
+ if (false !== ($tmp = mysqli_real_query($link, 'SELECT "this is sql but with backslash g"\g')))
printf("[005] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
if ((0 === mysqli_errno($link)) || ('' == mysqli_error($link)))
printf("[006] mysqli_errno()/mysqli_error should return some error\n");
- if (!mysqli_real_query($link, "SELECT 'this is sql but with semicolon' AS valid ; "))
+ if (!mysqli_real_query($link, 'SELECT "this is sql but with semicolon" AS valid ; '))
printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!is_object($res = mysqli_use_result($link)))
- printf("[008] Expecting result object, got %s/%s [%d] %s\n", gettype($res), $res, mysqli_errno($link), mysqli_error($link));
+ printf("[008] Expecting reseult object, got %s/%s [%d] %s\n", gettype($res), $res, mysqli_errno($link), mysqli_error($link));
var_dump(mysqli_fetch_assoc($res));
mysqli_free_result($res);
?>
--EXPECTF--
array(1) {
- [u"valid"]=>
- unicode(30) "this is sql but with semicolon"
+ [%u|b%"valid"]=>
+ %unicode|string%(30) "this is sql but with semicolon"
}
Warning: mysqli_real_query(): Couldn't fetch mysqli in %s on line %d
-done!
+done!
\ No newline at end of file
else
mysqli_stmt_close($stmt);
- if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, 'z')", MYSQLI_USE_RESULT) ||
+ if (!mysqli_query($link, 'INSERT INTO test(id, label) VALUES (100, "z")', MYSQLI_USE_RESULT) ||
!mysqli_query($link, 'DELETE FROM test WHERE id > 50', MYSQLI_USE_RESULT))
printf("[033] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
Warning: mysqli_stmt_prepare(): (%d/%d): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FOO' at line 1 in %s on line %d
[013] Access denied for user '%s'@'%s' (using password: YES)
[016] Access denied for user '%s'@'%s' (using password: YES)
-done!
+done!
\ No newline at end of file
--TEST--
References to result sets
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
-require_once('skipifemb.inc');
+require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
?>
--FILE--
array(7) refcount(2){
[0]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
long(1) refcount(1)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "a" { 0061 } refcount(1)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a" refcount(1)
}
[1]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
long(2) refcount(1)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "b" { 0062 } refcount(1)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b" refcount(1)
}
[2]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
long(1) refcount(1)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "a" { 0061 } refcount(1)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a" refcount(1)
}
[3]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
long(2) refcount(1)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "b" { 0062 } refcount(1)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b" refcount(1)
}
[4]=>
array(3) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
&long(3) refcount(2)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "a" { 0061 } refcount(1)
- [u"id2" { 0069 0064 0032 }]=>
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a" refcount(1)
+ [%u|b%"id2"]=>
&long(3) refcount(2)
}
[5]=>
array(3) refcount(1){
- [u"id" { 0069 0064 }]=>
+ [%u|b%"id"]=>
&long(4) refcount(2)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "b" { 0062 } refcount(1)
- [u"id2" { 0069 0064 0032 }]=>
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b" refcount(1)
+ [%u|b%"id2"]=>
&long(4) refcount(2)
}
[6]=>
&object(mysqli_result)#2 (5) refcount(2){
- ["current_field"]=>
+ [%u|b%"current_field"]=>
NULL refcount(1)
- ["field_count"]=>
+ [%u|b%"field_count"]=>
NULL refcount(1)
- ["lengths"]=>
+ [%u|b%"lengths"]=>
NULL refcount(1)
- ["num_rows"]=>
+ [%u|b%"num_rows"]=>
NULL refcount(1)
- ["type"]=>
+ [%u|b%"type"]=>
NULL refcount(1)
}
}
array(1) refcount(2){
[0]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
- unicode(1) "1" { 0031 } refcount(1)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "a" { 0061 } refcount(1)
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1" refcount(1)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a" refcount(1)
}
}
-done!
+done!
\ No newline at end of file
array(2) refcount(2){
[0]=>
array(4) refcount(1){
- [u"row_ref" { 0072 006f 0077 005f 0072 0065 0066 }]=>
+ [%u|b%"row_ref"]=>
&NULL refcount(2)
- [u"row_copy" { 0072 006f 0077 005f 0063 006f 0070 0079 }]=>
+ [%u|b%"row_copy"]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
- unicode(1) "1" { 0031 } refcount(2)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "a" { 0061 } refcount(2)
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1" refcount(2)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a" refcount(2)
}
- [u"id_ref" { 0069 0064 005f 0072 0065 0066 }]=>
- unicode(1) "1" { 0031 } refcount(1)
- [u"id_copy" { 0069 0064 005f 0063 006f 0070 0079 }]=>
- unicode(1) "1" { 0031 } refcount(1)
+ [%u|b%"id_ref"]=>
+ %unicode|string%(1) "1" refcount(1)
+ [%u|b%"id_copy"]=>
+ %unicode|string%(1) "1" refcount(1)
}
[1]=>
array(5) refcount(1){
- [u"row_ref" { 0072 006f 0077 005f 0072 0065 0066 }]=>
+ [%u|b%"row_ref"]=>
&array(2) refcount(2){
- [u"id" { 0069 0064 }]=>
- &unicode(1) "2" { 0032 } refcount(2)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "b" { 0062 } refcount(3)
+ [%u|b%"id"]=>
+ &%unicode|string%(1) "2" refcount(2)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b" refcount(3)
}
- [u"row_copy" { 0072 006f 0077 005f 0063 006f 0070 0079 }]=>
+ [%u|b%"row_copy"]=>
array(2) refcount(1){
- [u"id" { 0069 0064 }]=>
- unicode(1) "2" { 0032 } refcount(2)
- [u"label" { 006c 0061 0062 0065 006c }]=>
- unicode(1) "b" { 0062 } refcount(3)
+ [%u|b%"id"]=>
+ %unicode|string%(1) "2" refcount(2)
+ [%u|b%"label"]=>
+ %unicode|string%(1) "b" refcount(3)
}
- [u"id_ref" { 0069 0064 005f 0072 0065 0066 }]=>
- &unicode(1) "2" { 0032 } refcount(2)
- [u"id_copy" { 0069 0064 005f 0063 006f 0070 0079 }]=>
- unicode(1) "2" { 0032 } refcount(1)
- [u"id_copy_mod" { 0069 0064 005f 0063 006f 0070 0079 005f 006d 006f 0064 }]=>
+ [%u|b%"id_ref"]=>
+ &%unicode|string%(1) "2" refcount(2)
+ [%u|b%"id_copy"]=>
+ %unicode|string%(1) "2" refcount(1)
+ [%u|b%"id_copy_mod"]=>
long(2) refcount(1)
}
}
-done!
+done!
\ No newline at end of file
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip set character set not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
+}
+
if (!function_exists('mysqli_set_charset'))
die("skip Function not available");
-if (ini_get("unicode.semantics"))
- die("skip: mysqli_set_charset() is disabled in unicode");
require_once('connect.inc');
if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
Callback: 1
[037] More results than expected!
array(2) {
- [u"id"]=>
- unicode(2) "97"
- [u"label"]=>
- unicode(1) "x"
+ [%u|b%"id"]=>
+ %unicode|string%(2) "97"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "x"
}
array(2) {
- [u"id"]=>
- unicode(2) "98"
- [u"label"]=>
- unicode(1) "y"
+ [%u|b%"id"]=>
+ %unicode|string%(2) "98"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "y"
}
array(2) {
- [u"id"]=>
- unicode(2) "99"
- [u"label"]=>
- unicode(1) "z"
+ [%u|b%"id"]=>
+ %unicode|string%(2) "99"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "z"
}
Callback set to 'callback_error'
Callback: 0
[042] LOAD DATA failed, [2000] How to access this error?
-done!
+done!
\ No newline at end of file
$ret = "1;'a';\n";
$buffer = $ret;
- $num_chars = (ini_get('unicode.semantics')) ? floor($buflen / 2) : $buflen;
+ $num_chars = ((version_compare(PHP_VERSION, '5.9.9', '>') == 1)) ? floor($buflen / 2) : $buflen;
assert(strlen($buffer) < $num_chars);
if ($invocation > 10)
--TEST--
mysqli_set_opt() - MYSQLI_OPT_NUMERIC_AND_DATETIME_AS_UNICODE
--SKIPIF--
-<?php
+<?php
require_once('skipif.inc');
-require_once('skipifemb.inc');
+require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
+if (version_compare(PHP_VERSION, '5.9.9', '<') == 1) {
+ die('skip Needs PHP 6 and Unicode');
+}
-if (!function_exists('unicode_semantics'))
- die("skip needs PHP 6");
-if (!unicode_semantics())
- die("skip works only in unicode mode");
if (!stristr(mysqli_get_client_info(), "mysqlnd"))
die("skip works only with mysqlnd");
?>
mysqli_stmt_close($stmt);
$stmt = mysqli_stmt_init($link);
- if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(id, label) VALUES (1, 'a')") ||
+ if (!mysqli_stmt_prepare($stmt, 'INSERT INTO test(id, label) VALUES (1, "a")') ||
!mysqli_stmt_execute($stmt))
printf("[006] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
mysqli_stmt_close($stmt);
$stmt = mysqli_stmt_init($link);
- if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(id, label) VALUES (100, 'z')") ||
+ if (!mysqli_stmt_prepare($stmt, 'INSERT INTO test(id, label) VALUES (100, "z")') ||
!mysqli_stmt_execute($stmt))
printf("[007] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
mysqli_stmt_close($stmt);
$stmt = mysqli_stmt_init($link);
- if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(id, label) VALUES (100, 'z')") ||
+ if (!mysqli_stmt_prepare($stmt, 'INSERT INTO test(id, label) VALUES (100, "z")') ||
!mysqli_stmt_execute($stmt))
// NOTE: the error message varies with the MySQL Server version, dump only the error code!
printf("[009] [%d] (error message varies with the MySQL Server version, check the error code)\n", mysqli_stmt_errno($stmt));
mysqli_stmt_close($stmt);
$stmt = mysqli_stmt_init($link);
- if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(id, label) VALUES (1, 'a') ON DUPLICATE KEY UPDATE id = 4") ||
+ if (!mysqli_stmt_prepare($stmt, 'INSERT INTO test(id, label) VALUES (1, "a") ON DUPLICATE KEY UPDATE id = 4') ||
!mysqli_stmt_execute($stmt))
printf("[011] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
--TEST--
-mysqli_stmt_attr_set()
+mysqli_stmt_attr_set() - KNOWN ISSUE: mysqlnd does not check for invalid codes
--SKIPIF--
<?php
require_once('skipif.inc');
--EXPECTF--
Regular, procedural, using variables
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for everything
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, object oriented, using references for everything
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, object oriented, using variable for types. using references for bound parameter
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, object oriented, using constant for types. using references for bound parameter
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for everything but using variable for types
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for bound parameter, using variables for resource and types
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for bound parameter, using variables for resource and types
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for bound parameter, using variable for resource, using constant for types
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
Call user func, procedural, using references for bound parameter, using variable for resource, using constant for types, array
int(1)
-unicode(1) "a"
-done!
+%unicode|string%(1) "a"
+done!
\ No newline at end of file
?>
--EXPECTF--
Test 1:
+object(foo)#3 (1) {
+ ["bar"]=>
+ string(10) "фубар"
+}
+object(foo)#3 (1) {
+ ["bar"]=>
+ &string(10) "фубар"
+}
+фубар
+
+Test 2:
+object(foo)#3 (1) {
+ ["bar"]=>
+ string(10) "фубар"
+}
+---
+object(foo)#3 (1) {
+ ["bar"]=>
+ &string(10) "фубар"
+}
+---
+object(foo)#3 (1) {
+ ["bar"]=>
+ &string(10) "фубар"
+}
+---
+фубар - 0
+
+Test 3:
+object(foo)#3 (1) {
+ ["bar"]=>
+ string(10) "фубар"
+}
+object(foo)#3 (1) {
+ ["bar"]=>
+ &string(10) "фубар"
+}
+0 - фубар
+
+done!
+--UEXPECTF--
+Test 1:
object(foo)#3 (1) {
[u"bar"]=>
unicode(5) "фубар"
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
<?php
include "connect.inc";
- $hint_str_or_unicode = ini_get("unicode.semantics")? "unicode":"string";
+ $hint_str_or_unicode = (version_compare(PHP_VERSION, '5.9.9', '>') == 1) ? "unicode":"string";
$tmp = NULL;
$link = NULL;
Warning: mysqli_stmt_bind_result(): Number of bind variables doesn't match number of fields in prepared statement in %s on line %d
int(1)
-unicode(1) "a"
-done!
+%s(1) "a"
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
--EXPECTF--
plain vanilla...
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
reference, one level...
int(1)
int(1)
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, two levels...
int(1)
int(1)
int(1)
-unicode(1) "a"
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, $GLOBALS...
int(1)
int(1)
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, same target...
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, simple object...
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
reference, simple object w reference...
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
reference, simple object w reference, change after bind...
int(1)
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
int(1)
reference, one level, change after bind...
int(1)
int(1)
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, circle...
int(1)
-unicode(1) "a"
-unicode(1) "a"
+%unicode|string%(1) "a"
+%unicode|string%(1) "a"
reference, object, forward declaration...
int(1)
object(bar)#%d (2) {
- [u"bar"]=>
- &unicode(1) "a"
- [u"foo"]=>
- &unicode(1) "a"
+ [%u|b%"bar"]=>
+ &%unicode|string%(1) "a"
+ [%u|b%"foo"]=>
+ &%unicode|string%(1) "a"
}
-unicode(1) "a"
+%unicode|string%(1) "a"
references, object, private...
int(1)
-unicode(1) "a"
+%unicode|string%(1) "a"
object(mega_bar)#5 (4) {
- [u"id":u"mega_bar":private]=>
+ [%s]=>
&int(1)
- [u"id_ref"]=>
+ [%u|b%"id_ref"]=>
&int(1)
- [u"bar"]=>
- &unicode(1) "a"
- [u"foo"]=>
- &unicode(1) "a"
+ [%u|b%"bar"]=>
+ &%unicode|string%(1) "a"
+ [%u|b%"foo"]=>
+ &%unicode|string%(1) "a"
}
-done!
+done!
\ No newline at end of file
$c2->query("use $db");
$c1->query("drop table if exists type_change");
$c1->query("create table type_change(a int, b char(10))");
- $c1->query("insert into type_change values (1, 'one'), (2, 'two')");
+ $c1->query("insert into type_change values (1, 'one'), (2, 'two')");
$s1 = $c1->prepare("select a from type_change order by a");
var_dump($s1->execute(), $s1->bind_result($col1));
echo "---- Row 1\n";
ALTER
bool(true)
bool(false)
-unicode(34) "Unknown column 'a' in 'field list'"
+%unicode|string%(34) "Unknown column 'a' in 'field list'"
---- Row 1
bool(false)
int(2)
---- Row 3
bool(false)
----
-done!
+done!
\ No newline at end of file
if (!$stmt = mysqli_stmt_init($link))
printf("[013] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
- if (!mysqli_stmt_prepare($stmt, "SELECT id FROM test ORDER BY id LIMIT 1"))
+ if (!mysqli_stmt_prepare($stmt, "SELECT id FROM test ORDER BY id LIMIT ?"))
printf("[014] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+ $limit = 1;
+ if (!mysqli_stmt_bind_param($stmt, "i", $limit))
+ printf("[015] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+
if (true !== ($tmp = mysqli_stmt_execute($stmt)))
- printf("[015] Expecting boolean/true, got %s/%s. [%d] %s\n",
+ printf("[016] Expecting boolean/true, got %s/%s. [%d] %s\n",
gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
$id = null;
if (!mysqli_stmt_bind_result($stmt, $id) || !mysqli_stmt_fetch($stmt))
- printf("[016] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+ printf("[017] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
if ($id !== 1)
- printf("[017] Expecting int/1 got %s/%s\n", gettype($id), $id);
+ printf("[018] Expecting int/1 got %s/%s\n", gettype($id), $id);
if (true !== ($tmp = mysqli_stmt_reset($stmt)))
- printf("[018] Expecting boolean/true, got %s/%s. [%d] %s\n",
+ printf("[019] Expecting boolean/true, got %s/%s. [%d] %s\n",
gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
- printf("Don't know what we should expect\n");
- var_dump(mysqli_stmt_execute($stmt));
- var_dump(mysqli_stmt_fetch($stmt));
+ if (true !== ($tmp = mysqli_stmt_execute($stmt)))
+ printf("[020] Expecting boolean/true after reset to prepare status, got %s/%s. [%d] %s\n",
+ gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+
+ $id = null;
+ if (!mysqli_stmt_fetch($stmt))
+ printf("[021] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+
+ if ($id !== 1)
+ printf("[022] Expecting int/1 got %s/%s\n", gettype($id), $id);
mysqli_stmt_close($stmt);
if (!$stmt = mysqli_stmt_init($link))
- printf("[019] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
+ printf("[023] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!mysqli_stmt_prepare($stmt, "SELECT id FROM test ORDER BY id LIMIT 1"))
- printf("[020] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
+ printf("[024] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
if (true !== ($tmp = mysqli_stmt_execute($stmt)))
- printf("[021] Expecting boolean/true, got %s/%s. [%d] %s\n",
+ printf("[025] Expecting boolean/true, got %s/%s. [%d] %s\n",
gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
if (true !== ($tmp = mysqli_stmt_reset($stmt)))
- printf("[022] Expecting boolean/true, got %s/%s. [%d] %s\n",
+ printf("[026] Expecting boolean/true, got %s/%s. [%d] %s\n",
gettype($tmp), $tmp, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
- printf("Don't know what we should expect\n");
var_dump(mysqli_stmt_execute($stmt));
var_dump(mysqli_stmt_fetch($stmt));
mysqli_kill($link, mysqli_thread_id($link));
if (false !== ($tmp = mysqli_stmt_execute($stmt)))
- printf("[023] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
+ printf("[027] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
mysqli_stmt_close($stmt);
if (NULL !== ($tmp = mysqli_stmt_execute($stmt)))
- printf("[024] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
+ printf("[028] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
mysqli_close($link);
print "done!";
Warning: mysqli_stmt_execute(): invalid object or resource mysqli_stmt
in %s on line %d
+bool(true)
+bool(true)
+[027] Expecting boolean/false, got boolean/1
Warning: mysqli_stmt_execute(): Couldn't fetch mysqli_stmt in %s on line %d
done!
\ No newline at end of file
if (mysqli_real_query($link, 'CREATE PROCEDURE p(IN ver_in VARCHAR(25), OUT ver_out VARCHAR(25)) BEGIN SELECT ver_in INTO ver_out; END;')) {
// no result set, one input parameter, output parameter
// yes, I really do not want to bind input values...
- if (!$stmt = mysqli_prepare($link, "CALL p('myversion', @version)"))
+ if (!$stmt = mysqli_prepare($link, 'CALL p("myversion", @version)'))
printf("[029] Cannot prepare CALL, [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!mysqli_stmt_execute($stmt))
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (0 !== ($tmp = mysqli_stmt_field_count($stmt)))
printf("[017] Expecting int/0, got %s/%s\n", gettype($tmp), $tmp);
- if (!mysqli_stmt_prepare($stmt, "UPDATE test SET label = 'z' WHERE id = 1") ||
+ if (!mysqli_stmt_prepare($stmt, 'UPDATE test SET label = "z" WHERE id = 1') ||
!mysqli_stmt_execute($stmt))
printf("[018] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
Warning: mysqli_stmt_prepare(): Couldn't fetch mysqli_stmt in %s on line %d
Warning: mysqli_stmt_field_count(): Couldn't fetch mysqli_stmt in %s on line %d
-done!
+done!
\ No newline at end of file
[038] [2014] [Commands out of sync; you can't run this command now]
[039] [0] []
array(2) {
- [%s"id"]=>
+ [%u|b%"id"]=>
int(1)
- [%s"label"]=>
+ [%u|b%"label"]=>
%s(1) "a"
}
array(2) {
- [%s"id"]=>
+ [%u|b%"id"]=>
int(2)
- [%s"label"]=>
+ [%u|b%"label"]=>
%s(1) "b"
}
Warning: mysqli_stmt_fetch(): Couldn't fetch mysqli_stmt in %s on line %d
-done!
+done!
\ No newline at end of file
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
-if (!function_exists('mysqli_stmt_get_result'))
+if (!function_exists('mysqli_stmt_get_result'))
die('skip mysqli_stmt_get_result not available');
?>
--FILE--
?>
--EXPECTF--
array(2) {
- [u"id"]=>
+ [%u|b%"id"]=>
int(1)
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
NULL
array(2) {
- [u"id"]=>
+ [%u|b%"id"]=>
int(1)
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
NULL
[017] [2014] Commands out of sync; you can't run this command now
Warning: mysqli_stmt_get_result(): Couldn't fetch mysqli_stmt in %s on line %d
-done!
+done!
\ No newline at end of file
?>
--EXPECTF--
array(2) {
- [u"id"]=>
+ [%u|b%"id"]=>
int(1)
- [u"label"]=>
- unicode(1) "a"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
}
NULL
bool(false)
Warning: mysqli_fetch_field(): Couldn't fetch mysqli_result in %s on line %d
NULL
-done!
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
+object(stdClass)#%d (11) {
+ ["name"]=>
+ string(2) "id"
+ ["orgname"]=>
+ string(2) "id"
+ ["table"]=>
+ string(4) "test"
+ ["orgtable"]=>
+ string(4) "test"
+ ["def"]=>
+ string(0) ""
+ ["max_length"]=>
+ int(0)
+ ["length"]=>
+ int(11)
+ ["charsetnr"]=>
+ int(63)
+ ["flags"]=>
+ int(49155)
+ ["type"]=>
+ int(3)
+ ["decimals"]=>
+ int(0)
+}
+object(stdClass)#%d (11) {
+ ["name"]=>
+ string(5) "label"
+ ["orgname"]=>
+ string(5) "label"
+ ["table"]=>
+ string(4) "test"
+ ["orgtable"]=>
+ string(4) "test"
+ ["def"]=>
+ string(0) ""
+ ["max_length"]=>
+ int(1)
+ ["length"]=>
+ int(1)
+ ["charsetnr"]=>
+ int(8)
+ ["flags"]=>
+ int(0)
+ ["type"]=>
+ int(254)
+ ["decimals"]=>
+ int(0)
+}
+object(stdClass)#%d (11) {
+ ["name"]=>
+ string(3) "_id"
+ ["orgname"]=>
+ string(0) ""
+ ["table"]=>
+ string(0) ""
+ ["orgtable"]=>
+ string(0) ""
+ ["def"]=>
+ string(0) ""
+ ["max_length"]=>
+ int(0)
+ ["length"]=>
+ int(%d)
+ ["charsetnr"]=>
+ int(63)
+ ["flags"]=>
+ int(32897)
+ ["type"]=>
+ int(8)
+ ["decimals"]=>
+ int(0)
+}
+object(stdClass)#%d (11) {
+ ["name"]=>
+ string(8) "___label"
+ ["orgname"]=>
+ string(0) ""
+ ["table"]=>
+ string(0) ""
+ ["orgtable"]=>
+ string(0) ""
+ ["def"]=>
+ string(0) ""
+ ["max_length"]=>
+ int(2)
+ ["length"]=>
+ int(2)
+ ["charsetnr"]=>
+ int(8)
+ ["flags"]=>
+ int(0)
+ ["type"]=>
+ int(253)
+ ["decimals"]=>
+ int(31)
+}
+done!
+--UEXPECTF--
object(stdClass)#%d (11) {
[u"name"]=>
unicode(2) "id"
[u"decimals"]=>
int(31)
}
-done!
+done!
\ No newline at end of file
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
printf("[001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
- $hint_str_or_unicode = ini_get('unicode.semantics') ? 'unicode' : 'string';
+ $hint_str_or_unicode = (version_compare(PHP_VERSION, '5.9.9', '>') == 1) ? 'unicode' : 'string';
function func_mysqli_stmt_get_result($link, $engine, $bind_type, $sql_type, $bind_value, $offset, $type_hint = null) {
Warning: mysqli_stmt_result_metadata(): invalid object or resource mysqli_stmt
in %s on line %d
object(stdClass)#5 (%d) {
- [u"name"]=>
- unicode(2) "id"
- [u"orgname"]=>
- unicode(2) "id"
- [u"table"]=>
- unicode(4) "test"
- [u"orgtable"]=>
- unicode(4) "test"
- [u"def"]=>
- unicode(0) ""
- [u"max_length"]=>
+ [%u|b%"name"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"orgname"]=>
+ %unicode|string%(2) "id"
+ [%u|b%"table"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"orgtable"]=>
+ %unicode|string%(4) "test"
+ [%u|b%"def"]=>
+ %unicode|string%(0) ""
+ [%u|b%"max_length"]=>
int(0)
- [u"length"]=>
+ [%u|b%"length"]=>
int(11)
- [u"charsetnr"]=>
+ [%u|b%"charsetnr"]=>
int(63)
- [u"flags"]=>
+ [%u|b%"flags"]=>
int(49155)
- [u"type"]=>
+ [%u|b%"type"]=>
int(3)
- [u"decimals"]=>
+ [%u|b%"decimals"]=>
int(0)
}
Warning: mysqli_stmt_result_metadata(): Couldn't fetch mysqli_stmt in %s on line %d
-done!
+done!
\ No newline at end of file
require_once('skipif.inc');
require_once('skipifemb.inc');
require_once('skipifconnectfailure.inc');
+
+die("skip Check again when the Klingons visit earth - http://bugs.mysql.com/bug.php?id=42490");
?>
--FILE--
<?php
/* Failing to prepare is OK */
return true;
}
- $res = mysqli_stmt_result_metadata($stmt);
+
if (empty($expected_lib) && (false !== $res)) {
printf("[%04d - %s] No metadata expected\n",
$offset + 1, $sql);
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (!mysqli_stmt_bind_param($stmt, "ib", $id, $label))
printf("[008] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
- if (!$res = mysqli_query($link, "SHOW VARIABLES LIKE 'max_allowed_packet'"))
+ if (!$res = mysqli_query($link, 'SHOW VARIABLES LIKE "max_allowed_packet"'))
printf("[009] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!$row = mysqli_fetch_assoc($res))
?>
--EXPECTF--
Warning: mysqli_stmt_send_long_data(): Invalid parameter number in %s on line %d
-
-Warning: mysqli_stmt_send_long_data(): Invalid parameter number in %s on line %d
-done!
+done!
\ No newline at end of file
if (!mysqli_stmt_bind_param($stmt, "ib", $id, $label))
printf("[005] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
- if (!$res = mysqli_query($link, "SHOW VARIABLES LIKE 'max_allowed_packet'"))
+ if (!$res = mysqli_query($link, 'SHOW VARIABLES LIKE "max_allowed_packet"'))
printf("[006] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
if (!$row = mysqli_fetch_assoc($res))
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
if (NULL !== ($tmp = @mysqli_stmt_store_result($stmt)))
printf("[005] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
- if (!mysqli_stmt_prepare($stmt, "INSERT INTO test(id, label) VALUES (100, 'z')") ||
+ if (!mysqli_stmt_prepare($stmt, 'INSERT INTO test(id, label) VALUES (100, "z")') ||
!mysqli_stmt_execute($stmt))
printf("[006] [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
print "done!";
?>
--EXPECTF--
-done!
+done!
\ No newline at end of file
<?php
-if (ini_get("unicode.semantics")){
- die('skip Test doesn't work in Unicode mode');
+if (version_compare(PHP_VERSION, '5.9.9', '>') == 1) {
+ die('skip Not functional with PHP 6 (fomerly PHP 6 && unicode.semantics=On)');
}
?>
exit(1);
}
-if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (1, 'a'), (2, 'b'), (3, 'c'), (4, 'd'), (5, 'e'), (6, 'f')")) {
+if (!mysqli_query($link, 'INSERT INTO test(id, label) VALUES (1, "a"), (2, "b"), (3, "c"), (4, "d"), (5, "e"), (6, "f")')) {
printf("[%d] %s\n", mysqli_errno($link), mysqli_error($link));
}
-?>
+?>
\ No newline at end of file