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>