Intereting Posts
Протестируйте этот метод с некоторыми параметрами, среди прочих Как выполнить итерацию через этот цикл Получать каждый элемент отдельно PHP-эквивалент javascript >>> shift right с нулевыми заполняющими побитовыми операторами? Ошибка анализа: синтаксическая ошибка, неожиданный T_STRING в php XFBML и кнопка входа в Facebook Что делает b перед строковыми литералами? Сократите URL, удалив пустые переменные GET и упростив имена переменных Как создавать сеансы с использованием PHP? Ошибка Paypal. Мы сожалеем. В настоящий момент, похоже, не работает. Вкладки Jquery содержат открытые вкладки, которые являются субадиями в URL-адресе Возвращает массив массивов массивов объектов Обмен сеансами между двумя приложениями CodeIgniter PHP, как перечислять все публичные функции класса Числовые значения уровней отчетов об ошибках Переменная контроллера не отображается в Query Builder Laravel

Как обновить версию SQLite в комплекте с PHP

PHP 5.5 поставляется в комплекте с SQLite 3.7.7.1.

С тех пор было выпущено более 20 новых версий SQLite, и www.sqlite.org рекомендует обновлять. В моем случае мне нужна функция, доступная только с SQLite 3.8.0.

Насколько я понял, SQLite не динамически связан в PHP 5.5, но исходный код sqlite скомпилирован во встроенный PHP PDO-драйвер для SQLite.

Есть ли способ использовать текущую версию SQLite в PHP без перестройки PHP из исходного кода (например, каким-то образом динамически связывая sqlite.dll)?

Я мог бы создать новую php_pdo_sqlite.dll, чтобы перейти к существующей установке PHP 5.5 Windows, которая включает текущую версию (3.8.1) SQLite:

Я последовал за пошаговым руководством по созданию PHP в Windows с помощью Visual Studio 2012 Express (доступно с http://www.microsoft.com/en-us/download/details.aspx?id=34673 ).

В источниках PHP 5.5 я заменил устаревший файл слияния sqlite ext\sqlite3\libsqlite\sqlite.c на текущий из http://www.sqlite.org/download.html .

Я использовал configure --enable-pdo=shared --with-pdo-sqlite=shared .

Это создает php_pdo_sqlite.dll который я мог бы php_pdo_sqlite.dll в существующую установку PHP 5.5, заменив предыдущую (в комплекте) версию этого файла.

 <?php $dbh = new PDO('sqlite:test1.sqlite'); print_r("SQLite version " . $dbh->query('select sqlite_version()')->fetch()[0]); $dbh = null; ?> 

подтверждает:

 SQLite version: 3.8.1