Annotation of embedaddon/php/ext/mysqli/tests/mysqli_fetch_assoc_no_alias_utf8.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: mysqli_fetch_assoc() - utf8
! 3: --SKIPIF--
! 4: <?php
! 5: require_once('skipif.inc');
! 6: require_once('skipifemb.inc');
! 7: require_once('skipifconnectfailure.inc');
! 8: require_once("connect.inc");
! 9:
! 10: if (!$link = mysqli_connect($host, $user, $passwd, $db, $port, $socket))
! 11: die("skip Cannot connect to server to check charsets");
! 12:
! 13: if (!$res = mysqli_query($link, "SHOW CHARACTER SET LIKE 'UTF8'"))
! 14: die("skip Cannot run SHOW CHARACTER SET to check charsets");
! 15:
! 16: if (!$tmp = mysqli_fetch_assoc($res))
! 17: die("skip Looks like UTF8 is not available on the server");
! 18:
! 19: if (strtolower($tmp['Charset']) !== 'utf8')
! 20: die("skip Not sure if UTF8 is available, cancelling the test");
! 21:
! 22: mysqli_free_result($res);
! 23:
! 24: if (!$res = mysqli_query($link, "SHOW CHARACTER SET LIKE 'UCS2'"))
! 25: die("skip Cannot run SHOW CHARACTER SET to check charsets");
! 26:
! 27: if (!$tmp = mysqli_fetch_assoc($res))
! 28: die("skip Looks like UCS2 is not available on the server");
! 29:
! 30: if (strtolower($tmp['Charset']) !== 'ucs2')
! 31: die("skip Not sure if UCS2 is available, cancelling the test");
! 32:
! 33: mysqli_free_result($res);
! 34: mysqli_close($link);
! 35: ?>
! 36: --FILE--
! 37: <?php
! 38: require('table.inc');
! 39:
! 40: /* some cyrillic (utf8) comes here */
! 41: if (!$res = mysqli_query($link, "SET NAMES UTF8")) {
! 42: printf("[001] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 43: }
! 44:
! 45: if (!$res = mysqli_query($link, "SELECT 1 AS 'Андрей Христов', 2 AS 'Улф Вендел', 3 AS 'Георг Рихтер'")) {
! 46: printf("[002] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 47: }
! 48: print "[003]\n";
! 49: var_dump(mysqli_fetch_assoc($res));
! 50: mysqli_free_result($res);
! 51:
! 52: if (!$res = mysqli_query($link, "CREATE TABLE автори_на_mysqlnd (id integer not null auto_increment primary key, име varchar(20) character set ucs2, фамилия varchar(20) character set utf8)")) {
! 53: printf("[004] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 54: }
! 55: if (!$res = mysqli_query($link, "INSERT INTO автори_на_mysqlnd (име, фамилия) VALUES ('Андрей', 'Христов'), ('Георг', 'Рихтер'), ('Улф','Вендел')")) {
! 56: printf("[005] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 57: }
! 58: if (!$res = mysqli_query($link, "INSERT INTO автори_на_mysqlnd (име, фамилия) VALUES ('Andrey', 'Hristov'), ('Georg', 'Richter'), ('Ulf','Wendel')")) {
! 59: printf("[006] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 60: }
! 61: if (!$res = mysqli_query($link, "INSERT INTO автори_на_mysqlnd (име, фамилия) VALUES ('安德烈', 'Hristov'), ('格奥尔', 'Richter'), ('乌尔夫','Wendel')")) {
! 62: printf("[007] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 63: }
! 64:
! 65: if (!$res = mysqli_query($link, "SELECT id, име, фамилия FROM автори_на_mysqlnd ORDER BY фамилия, име")) {
! 66: printf("[008] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 67: }
! 68: print "[009]\n";
! 69: while ($row = mysqli_fetch_assoc($res)) {
! 70: var_dump($row);
! 71: }
! 72: mysqli_free_result($res);
! 73:
! 74: if (!$res = mysqli_query($link, "DROP TABLE автори_на_mysqlnd")) {
! 75: printf("[010] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
! 76: }
! 77:
! 78: mysqli_close($link);
! 79: print "done!";
! 80: ?>
! 81: --EXPECTF--
! 82: [003]
! 83: array(3) {
! 84: [%u|b%"Андрей Христов"]=>
! 85: %unicode|string%(%r[1|3]%r) "1"
! 86: [%u|b%"Улф Вендел"]=>
! 87: %unicode|string%(1) "2"
! 88: [%u|b%"Георг Рихтер"]=>
! 89: %unicode|string%(1) "3"
! 90: }
! 91: [009]
! 92: array(3) {
! 93: [%u|b%"id"]=>
! 94: %unicode|string%(1) "4"
! 95: [%u|b%"име"]=>
! 96: %unicode|string%(6) "Andrey"
! 97: [%u|b%"фамилия"]=>
! 98: %unicode|string%(7) "Hristov"
! 99: }
! 100: array(3) {
! 101: [%u|b%"id"]=>
! 102: %unicode|string%(1) "7"
! 103: [%u|b%"име"]=>
! 104: %unicode|string%(9) "安德烈"
! 105: [%u|b%"фамилия"]=>
! 106: %unicode|string%(7) "Hristov"
! 107: }
! 108: array(3) {
! 109: [%u|b%"id"]=>
! 110: %unicode|string%(1) "5"
! 111: [%u|b%"име"]=>
! 112: %unicode|string%(5) "Georg"
! 113: [%u|b%"фамилия"]=>
! 114: %unicode|string%(7) "Richter"
! 115: }
! 116: array(3) {
! 117: [%u|b%"id"]=>
! 118: %unicode|string%(1) "8"
! 119: [%u|b%"име"]=>
! 120: %unicode|string%(9) "格奥尔"
! 121: [%u|b%"фамилия"]=>
! 122: %unicode|string%(7) "Richter"
! 123: }
! 124: array(3) {
! 125: [%u|b%"id"]=>
! 126: %unicode|string%(1) "6"
! 127: [%u|b%"име"]=>
! 128: %unicode|string%(3) "Ulf"
! 129: [%u|b%"фамилия"]=>
! 130: %unicode|string%(6) "Wendel"
! 131: }
! 132: array(3) {
! 133: [%u|b%"id"]=>
! 134: %unicode|string%(1) "9"
! 135: [%u|b%"име"]=>
! 136: %unicode|string%(9) "乌尔夫"
! 137: [%u|b%"фамилия"]=>
! 138: %unicode|string%(6) "Wendel"
! 139: }
! 140: array(3) {
! 141: [%u|b%"id"]=>
! 142: %unicode|string%(1) "3"
! 143: [%u|b%"име"]=>
! 144: %unicode|string%(6) "Улф"
! 145: [%u|b%"фамилия"]=>
! 146: %unicode|string%(12) "Вендел"
! 147: }
! 148: array(3) {
! 149: [%u|b%"id"]=>
! 150: %unicode|string%(1) "2"
! 151: [%u|b%"име"]=>
! 152: %unicode|string%(10) "Георг"
! 153: [%u|b%"фамилия"]=>
! 154: %unicode|string%(12) "Рихтер"
! 155: }
! 156: array(3) {
! 157: [%u|b%"id"]=>
! 158: %unicode|string%(1) "1"
! 159: [%u|b%"име"]=>
! 160: %unicode|string%(12) "Андрей"
! 161: [%u|b%"фамилия"]=>
! 162: %unicode|string%(14) "Христов"
! 163: }
! 164: done!
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>