mirror of
https://github.com/php/php-src.git
synced 2026-04-26 01:18:19 +02:00
Expose DB-Library version as \PDO::DBLIB_ATTR_VERSION attribute on \PDO instance
This commit is contained in:
@@ -281,6 +281,10 @@ static int dblib_get_attribute(pdo_dbh_t *dbh, zend_long attr, zval *return_valu
|
||||
ZVAL_BOOL(return_value, ((pdo_dblib_db_handle *)dbh->driver_data)->stringify_uniqueidentifier);
|
||||
break;
|
||||
|
||||
case PDO_DBLIB_ATTR_VERSION:
|
||||
ZVAL_STRING(return_value, dbversion());
|
||||
break;
|
||||
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -194,6 +194,7 @@ PHP_MINIT_FUNCTION(pdo_dblib)
|
||||
REGISTER_PDO_CLASS_CONST_LONG("DBLIB_ATTR_CONNECTION_TIMEOUT", (long) PDO_DBLIB_ATTR_CONNECTION_TIMEOUT);
|
||||
REGISTER_PDO_CLASS_CONST_LONG("DBLIB_ATTR_QUERY_TIMEOUT", (long) PDO_DBLIB_ATTR_QUERY_TIMEOUT);
|
||||
REGISTER_PDO_CLASS_CONST_LONG("DBLIB_ATTR_STRINGIFY_UNIQUEIDENTIFIER", (long) PDO_DBLIB_ATTR_STRINGIFY_UNIQUEIDENTIFIER);
|
||||
REGISTER_PDO_CLASS_CONST_LONG("DBLIB_ATTR_VERSION", (long) PDO_DBLIB_ATTR_VERSION);
|
||||
|
||||
if (FAIL == dbinit()) {
|
||||
return FAILURE;
|
||||
|
||||
@@ -148,6 +148,7 @@ enum {
|
||||
PDO_DBLIB_ATTR_CONNECTION_TIMEOUT = PDO_ATTR_DRIVER_SPECIFIC,
|
||||
PDO_DBLIB_ATTR_QUERY_TIMEOUT,
|
||||
PDO_DBLIB_ATTR_STRINGIFY_UNIQUEIDENTIFIER,
|
||||
PDO_DBLIB_ATTR_VERSION,
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
--TEST--
|
||||
PDO_DBLIB: \PDO::DBLIB_ATTR_VERSION exposes a string
|
||||
--SKIPIF--
|
||||
<?php
|
||||
if (!extension_loaded('pdo_dblib')) die('skip not loaded');
|
||||
require __DIR__ . '/config.inc';
|
||||
?>
|
||||
--FILE--
|
||||
<?php
|
||||
require __DIR__ . '/config.inc';
|
||||
|
||||
$version = $db->getAttribute(PDO::DBLIB_ATTR_VERSION);
|
||||
var_dump(is_string($version) && strlen($version));
|
||||
|
||||
?>
|
||||
--EXPECT--
|
||||
bool(true)
|
||||
Reference in New Issue
Block a user