Annotation of embedaddon/php/ext/mysqli/tests/mysqli_fetch_assoc_no_alias_utf8.phpt, revision 1.1.1.2
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')
1.1.1.2 ! misho 20: die("skip Not sure if UTF8 is available, canceling the test");
1.1 misho 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')
1.1.1.2 ! misho 31: die("skip Not sure if UCS2 is available, canceling the test");
1.1 misho 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>