Annotation of embedaddon/php/ext/pdo_sqlite/tests/pdo_sqlite_createcollation.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: PDO_sqlite: Testing sqliteCreateCollation()
3: --SKIPIF--
4: <?php if (!extension_loaded('pdo_sqlite')) print 'skip not loaded'; ?>
5: --FILE--
6: <?php
7:
8: $db = new pdo('sqlite::memory:');
9: $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
10:
11: $db->query('CREATE TABLE IF NOT EXISTS foobar (id INT AUTO INCREMENT, name TEXT)');
12:
13: $db->query('INSERT INTO foobar VALUES (NULL, "1")');
14: $db->query('INSERT INTO foobar VALUES (NULL, "2")');
15: $db->query('INSERT INTO foobar VALUES (NULL, "10")');
16:
17: $db->sqliteCreateCollation('MYCOLLATE', function($a, $b) { return strnatcmp($a, $b); });
18:
19: $result = $db->query('SELECT name FROM foobar ORDER BY name COLLATE MYCOLLATE');
20: foreach ($result as $row) {
21: echo $row['name'] . "\n";
22: }
23:
24: $result = $db->query('SELECT name FROM foobar ORDER BY name');
25: foreach ($result as $row) {
26: echo $row['name'] . "\n";
27: }
28:
29: $db->query('DROP TABLE foobar');
30:
31: ?>
32: --EXPECTF--
33: 1
34: 2
35: 10
36: 1
37: 10
38: 2
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>