php-src/ext/pdo_sqlite/tests/pdo_sqlite_createfunction_with_flags.phpt
Remi Collet 012dc336a6 Fix buid with system libsqlite, see bug #74217
SQLITE_DETERMINISTIC only exists in recent version
e.g. missing on 3.7 which is the default on RHEL/CentOS-7
and probably others (wheezy have 3.7, jessie 3.8...)
2017-03-29 07:25:01 +02:00

41 lines
881 B
PHP

--TEST--
PDO_sqlite: Testing sqliteCreateFunction() with flags
--SKIPIF--
<?php
if (!extension_loaded('pdo_sqlite')) print 'skip not loaded';
if (!defined('PDO::SQLITE_DETERMINISTIC')) die('skip system sqlite is to old');
?>
--FILE--
<?php
$db = new pdo('sqlite::memory:');
$db->query('CREATE TABLE IF NOT EXISTS foobar (id INT AUTO INCREMENT, name TEXT)');
$db->query('INSERT INTO foobar VALUES (NULL, "PHP")');
$db->query('INSERT INTO foobar VALUES (NULL, "PHP6")');
$db->sqliteCreateFunction('testing', function($v) { return strtolower($v); }, 1, PDO::SQLITE_DETERMINISTIC);
foreach ($db->query('SELECT testing(name) FROM foobar') as $row) {
var_dump($row);
}
$db->query('DROP TABLE foobar');
?>
--EXPECTF--
array(2) {
["testing(name)"]=>
string(3) "php"
[0]=>
string(3) "php"
}
array(2) {
["testing(name)"]=>
string(4) "php6"
[0]=>
string(4) "php6"
}