Установка

Начиная с версии PHP 5.0, это расширение доступно по умолчанию. Начиная с версии PHP 5.4, расширение SQLite доступно только через PECL.

Для использования этих функций пользователи Windows должны включить php_sqlite.dll в php.ini DLL для этого расширения PECL в данный момент недоступна. См. также раздел сборка на Windows.

В сборках Windows необходимо также включить PDO, так как начиная с версии PHP 5.1.0 модуль SQLite также зависит от него. В итоге php.ini будет выглядеть примерно так:

extension=php_pdo.dll
extension=php_sqlite.dll
Если вы собираете PDO в качестве подгружаемого модуля в операционных системах Unix или Linux, для SQLite необходимо использовать конфигурационную опцию --with-sqlite=shared.

Серия Windows сборок версии PHP 5.0.x включала это расширение по умолчанию, без необходимости подключать какие-либо DLL-файлы.

SQLite 3 поддерживается с помощью модуля PDO SQLite.

Замечание: Установка в Windows для непривилегированных аккаунтов

В операционной системе Windows в непривилегированных аккаунтах не переменная окружения TMP по умолчанию не устанавливается. Это вынуждает sqlite создавать временные файлы в папке windows, что не очень хорошо. Для решения этой проблемы необходимо установить переменную окружения TMP для веб-сервера или для того пользовательского аккаунта, под которым он запущен. Если вы используете Apache, то этого можно достигнуть установкой директивы SetEnv в файле httpd.conf. Например:

SetEnv TMP c:/temp
Если вы не можете установить эту переменную на серверном уровне, можно реализовать эту установку с помощью скрипта:
<?php
putenv
('TMP=C:/temp');
?>
Опция должна указывать на директорию, в которой веб-сервер может создавать файлы, последовательно писать в них и, соответственно, удалять. Иначе, вы получите следующее сообщение об ошибке: malformed database schema - unable to open a temporary database file for storing temporary tables (поврежденная схема базы данных - невозможно открыть временный файл с базой данных для хранения временных таблиц)


Участник рейтинга Тэглайн 2010