From php 7.1 i am using PDO like this:
$host = 'firebird:dbname=x.x.x.x:C:\baza.eu3';
$password = 'xxx';
$username = 'SYSDBA';
$firebird = new \PDO($host, $username, $password, [\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION]);
PDO_FIREBIRD - драйвер, реализующий интерфейс PHP Data Objects (PDO) для доступа к базам данных Firebird.
Для установки модуля PDO Firebird используйте опцию
--with-pdo-firebird[=DIR], где
[=DIR]
указывает на директорию установки Firebird.
$ ./configure --with-pdo-firebird
Перечисленные ниже константы определены данным драйвером и будут доступны только в случае, если PHP был собран с поддержкой этого модуля, или данный модуль был динамически загружен во время выполнения. Вдобавок, эти зависимые от драйвера константы должны быть использованы только совместно с этим драйвером. Использование атрибутов, специфичных для некоторого драйвера с другим драйвером может вызвать неожиданное поведение. Если ваш код выполняется с несколькими драйверами, то можно использовать функцию PDO::getAttribute() для получения атрибута PDO::ATTR_DRIVER_NAME
для проверки драйвера.
PDO::FB_ATTR_DATE_FORMAT
(int)
устанавливает формат даты.
PDO::FB_ATTR_TIME_FORMAT
(int)
Устанавливает формат времени.
PDO::FB_ATTR_TIMESTAMP_FORMAT
(int)
Устанавливает формат временной метки.
From php 7.1 i am using PDO like this:
$host = 'firebird:dbname=x.x.x.x:C:\baza.eu3';
$password = 'xxx';
$username = 'SYSDBA';
$firebird = new \PDO($host, $username, $password, [\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION]);
You need to set:
setAttribute(PDO::FB_ATTR_TIMESTAMP_FORMAT, '%s')
for timestamp values
After two days of trouble with no visibile issues, when rebooting the system two popups come up:
PHP Startup: Unable to load dynamic library
'c:/wamp/bin/php/php.5.3.13/ext/php_interbase.dll' - %1 non è un'applicazione di Win32 valida.
PHP Startup: Unable to load dynamic library
'c:/wamp/bin/php/php.5.3.13/ext/php_pdo_firebird.dll' - %1 non è un'applicazione di Win32 valida.
I've just re-installed wampserver (http://www.wampserver.com/en/) and all seems run well.
To see if your Firebird PDO driver runs well:
<?php
foreach(PDO::getAvailableDrivers() as $driver) {
echo $driver.'<br />';
}?>
The connection string for a firebird PDO connection is different than described above. It is something like:
$DB = new PDO("firebird:dbname=T:\\Klimreg.GDB", "SYSDBA", "masterkey");
after dbname= the default connection string for Interbase and Firebird databases is used as presented to either gds32.dll or fbclient.dll.