mirror of
https://github.com/dg/dibi.git
synced 2025-08-06 22:26:43 +02:00
OdbcDriver: added option 'microseconds'
This commit is contained in:
@@ -19,6 +19,7 @@ use Dibi;
|
|||||||
* - password (or pass)
|
* - password (or pass)
|
||||||
* - persistent (bool) => try to find a persistent link?
|
* - persistent (bool) => try to find a persistent link?
|
||||||
* - resource (resource) => existing connection resource
|
* - resource (resource) => existing connection resource
|
||||||
|
* - microseconds (bool) => use microseconds in datetime format?
|
||||||
*/
|
*/
|
||||||
class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector
|
class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector
|
||||||
{
|
{
|
||||||
@@ -33,6 +34,9 @@ class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector
|
|||||||
/** @var bool */
|
/** @var bool */
|
||||||
private $autoFree = true;
|
private $autoFree = true;
|
||||||
|
|
||||||
|
/** @var bool */
|
||||||
|
private $microseconds = true;
|
||||||
|
|
||||||
/** @var int|false Affected rows */
|
/** @var int|false Affected rows */
|
||||||
private $affectedRows = false;
|
private $affectedRows = false;
|
||||||
|
|
||||||
@@ -78,6 +82,10 @@ class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector
|
|||||||
if (!is_resource($this->connection)) {
|
if (!is_resource($this->connection)) {
|
||||||
throw new Dibi\DriverException(odbc_errormsg() . ' ' . odbc_error());
|
throw new Dibi\DriverException(odbc_errormsg() . ' ' . odbc_error());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isset($config['microseconds'])) {
|
||||||
|
$this->microseconds = (bool) $config['microseconds'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -286,7 +294,7 @@ class OdbcDriver implements Dibi\Driver, Dibi\ResultDriver, Dibi\Reflector
|
|||||||
if (!$value instanceof \DateTime && !$value instanceof \DateTimeInterface) {
|
if (!$value instanceof \DateTime && !$value instanceof \DateTimeInterface) {
|
||||||
$value = new Dibi\DateTime($value);
|
$value = new Dibi\DateTime($value);
|
||||||
}
|
}
|
||||||
return $value->format('#m/d/Y H:i:s.u#');
|
return $value->format($this->microseconds ? '#m/d/Y H:i:s.u#' : '#m/d/Y H:i:s#');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user