--TEST--
GitHub issue #231 - String truncation when binding varchar(max)
--SKIPIF--
--FILE--
The quick brown fox jumps over the lazy dog0123456789";
}
return $data;
}
function getPhpType($k)
{
$phpType = SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_CHAR);
if ($k == 7) {
$phpType = SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_BINARY);
}
return $phpType;
}
function SQLType($k)
{
switch ($k) {
case 1: return ("char(512)");
case 2: return ("varchar(512)");
case 3: return ("varchar(max)");
case 4: return ("nchar(512)");
case 5: return ("nvarchar(512)");
case 6: return ("nvarchar(max)");
case 7: return ("varbinary(max)");
case 8: return ("xml");
default: break;
}
return ("udt");
}
function getSQLSRVType($k, $dataSize)
{
switch ($k) {
case 1: return (SQLSRV_SQLTYPE_CHAR($dataSize));
case 2: return (SQLSRV_SQLTYPE_VARCHAR($dataSize));
case 3: return (SQLSRV_SQLTYPE_VARCHAR('max'));
case 4: return (SQLSRV_SQLTYPE_NCHAR($dataSize));
case 5: return (SQLSRV_SQLTYPE_NVARCHAR($dataSize));
case 6: return (SQLSRV_SQLTYPE_NVARCHAR('max'));
case 7: return (SQLSRV_SQLTYPE_VARBINARY('max'));
case 8: return (SQLSRV_SQLTYPE_XML);
default: break;
}
return (SQLSRV_SQLTYPE_UDT);
}
?>
--EXPECT--
Data Type: char(512) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: varchar(512) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: varchar(max) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: nchar(512) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: nvarchar(512) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: nvarchar(max) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: varbinary(max) binding as
Output parameter: data matched!
InOut parameter: data matched!
Data Type: xml binding as
Output parameter: data matched!
InOut parameter: data matched!