PHP 7.3 возвращает странные результаты, используя PDO SQLSRV - PullRequest
0 голосов
/ 16 апреля 2019

Когда я запускаю запрос ниже в разных версиях PHP / PDO_SQLSRV, я получаю другой результат.Мне кажется, что я упускаю что-то очевидное, например, параметр двоичной кодировки?

$hex = '0x44';

$sSQL = "
DECLARE @hex nvarchar(6) = :hex
SELECT CONVERT(VARBINARY(2), @hex, 1) myTest
";

$stmt = $this->rms->prepare($sSQL);
$stmt->bindParam(':hex',$hex);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);

print_r($result);

Результат из PHP 7.0.8 + php_pdo_sqlsrv 4.1.8819:

Array
(
    [0] => Array
        (
            [myTest] => 44
        )

)

Результат из PHP 7.3.4 + php_pdo_sqlsrv 5.6.1:

Array
(
    [0] => Array
        (
            [myTest] => D
        )

)

Результат из SQL Server 2008 R2:

Result from SQL Server 2008 R2

...