note 106779 modified in book.sqlite3 by danbrown
| From: | danbrown@php.net | Date: | Tue, 06 Dec 2011 18:34:26 +0000 |
| Subject: | note 106779 modified in book.sqlite3 by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-184941@lists.php.net to get a copy of this message | ||
As of PHP 5.4 support for Sqlite2 has been removed. I have a large web app that was built with
sqlite2 as the database backend and thus it exploded when I updated PHP. If you're in a similar
situation I've written a few wrapper functions that will allow your app to work whilst you
convert the code to sqlite3.
Firstly convert your DB to an sqlite3 db.
sqlite OLD.DB .dump | sqlite3 NEW.DB
Then add the following functions to your app:
<?php
function sqlite_open($location,$mode)
{
$handle = new SQLite3($location);
return $handle;
}
function sqlite_query($dbhandle,$query)
{
$array['dbhandle'] = $dbhandle;
$array['query'] = $query;
$result = $dbhandle->query($query);
return $result;
}
function sqlite_fetch_array(&$result,$type)
{
#Get Columns
$i = 0;
while ($result->columnName($i))
{
$columns[ ] = $result->columnName($i);
$i++;
}
$resx = $result->fetchArray(SQLITE3_ASSOC);
return $resx;
}
?>
They're not perfect by any stretch but they seem to be working ok as a temporary measure while
I convert the site.
Hope that helps someone
--was--
As of PHP 5.4 support for Sqlite2 has been removed. I have a large web app that was built with
sqlite2 as the database backend and thus it exploded when I updated PHP. If you're in a similar
situation I've written a few wrapper functions that will allow your app to work whilst you
convert the code to sqlite3.
Firstly convert your DB to an sqlite3 db.
sqlite OLD.DB .dump | sqlite3 NEW.DB
Then add the following functions to your app:
function sqlite_open($location,$mode)
{
$handle = new SQLite3($location);
return $handle;
}
function sqlite_query($dbhandle,$query)
{
$array['dbhandle'] = $dbhandle;
$array['query'] = $query;
$result = $dbhandle->query($query);
return $result;
}
function sqlite_fetch_array(&$result,$type)
{
#Get Columns
$i = 0;
while ($result->columnName($i))
{
$columns[ ] = $result->columnName($i);
$i++;
}
$resx = $result->fetchArray(SQLITE3_ASSOC);
return $resx;
}
They're not perfect by any stretch but they seem to be working ok as a temporary measure while
I convert the site.
Hope that helps someone
http://php.net/manual/en/book.sqlite3.php