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 is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Firebird database.
Use --with-pdo-firebird[=DIR] to install
the PDO Firebird extension, where the optional [=DIR]
is the Firebird base install directory.
$ ./configure --with-pdo-firebird
Die folgenden Konstanten werden vom Treiber
definiert und sind nur verfügbar, wenn die Erweiterung entweder in PHP einkompiliert
oder dynamisch zur Laufzeit geladen wurde. Weiterhin sind diese Konstanten
treiberspezifisch und sollten nur mit diesem Treiber benutzt werden. MySQL-spezifische
Attribute mit dem PostgreSQL Treiber zu nutzen, kann zu unerwarteten Ergebnissen
führen. Kann Ihr Code mit verschiedenen Treibern arbeiten, so können Sie
PDO::getAttribute() benutzen, um mit
PDO_ATTR_DRIVER_NAME
den aktuellen Treiber zu
ermitteln.
PDO::FB_ATTR_DATE_FORMAT
(int)
Sets the date format.
PDO::FB_ATTR_TIME_FORMAT
(int)
Sets the time format.
PDO::FB_ATTR_TIMESTAMP_FORMAT
(int)
Sets the timestamp format.
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.