php7.1支持MSSQL的改进与体验(php71 mssql)
PHP7.1支持MSSQL的改进与体验
PHP 7.1 中,添加了对 Microsoft SQL Server的支持的新的更新特性,包括对于 mssql_get_last_message()和 sqlsrv_errors() 函数的支持,以及统一的 dbmin functions() 和 更新连接块中可用的结果集标志。
Mssql_get_last_message() 函数可以用来获取最近操作的数据库报错信息。它可以报告当前连接或者上次执行查询所产生的错误,使用该函数能够让开发者更快的定位错误的原因,更好的进行查询优化:
$conn = new PDO(‘sqlsrv:server = XXXX; database = dbname’, “username”, “password”);
$stmt = $conn->query(‘select * from table’);
if (!$stmt) {
echo mssql_get_last_message();
}
?>
sqlsrv_errors() 函数可以用来获取关于一次操作中出现的所有报错信息,并以数组形式返回,数组中含有错误编号、错误信息以及SQL State,这样能够更好的检测出操作出错的原因:
$conn = new PDO(‘sqlsrv:server = XXXX; database = dbname’, “username”, “password”);
$stmt = $conn->query(‘select * from table’);
if (!$stmt) {
$error = sqlsrv_errors();
if (isset($error)) {
foreach ($error as $value) {
echo “Code:” . $value[‘code’] . “
Message:” . $value[‘message’] . “
SQLSTATE:” . $value[‘SQLSTATE’];
}
}
}
?>
此外,PHP 7.1中还增加了统一的dbmin 函数(),可以用来统一获取不同数据库连接块中的信息,比如,我们可以通过db_min_client_version()函数来获取客户端的版本信息,例如:
$version = db_min_client_version(‘mssql’);
echo $version;
此外,在连接块中还可以设置新的常量使用ON与OFF 来代替以前的 true与false,例如:
$conn = sqlsrv_connect(‘server’, array(
“Database” => “dbname”
“ReturnDatesAsStrings” =>ON));
?>
通过这些新的支持及特性,使得开发者更容易使用 PHP7.1 连接MSSQL数据库,并且可以更加灵活的获取错误信息,提高工作效率。