2 回答
TA贡献2037条经验 获得超6个赞
正如我们发现的,查询的第二个选定元素是 DateTime 类型,因此您必须将其解析为字符串。
您可以使用以下代码:
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['AccountTranID'].'-'. $row['MyDT']->format('Y-m-d H:i:s').'<br>';
}
TA贡献1851条经验 获得超3个赞
说明:
当您使用 检索 SQL Server 数据时sqlsrv_query(),您可以控制从 SQL Server返回date或date/time值的方式。这可以通过在连接字符串中设置选项来完成。此选项的默认值是and 、、、、、 和类型作为 PHP DateTime 对象返回。使用此选项时,这些值将作为字符串返回。'ReturnDatesAsStrings'falsesmalldatetimedatetimedatetimedatetime2datetimeoffsettrue
检索date或date/time值作为 PHP 日期时间对象:
<?php
// Connection
$server = '127.0.0.1\ikosoft,1066';
$cinfo = array(
"ReturnDatesAsStrings"=>false,
"Database" => "database",
"UID" => "username",
"PWD" => "password"
);
$conn = sqlsrv_connect($server, $cinfo);
if( $conn === false )
{
echo "Error (sqlsrv_connect): ".print_r(sqlsrv_errors(), true);
exit;
}
....
// Fetch data
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['MyDT']->format('Y-m-d H:i:s')."<br>";
}
...
?>
检索date或date/time值作为字符串:
<?php
// Connection
$server = '127.0.0.1\ikosoft,1066';
$cinfo = array(
"ReturnDatesAsStrings"=>true,
"Database" => "database",
"UID" => "username",
"PWD" => "password"
);
$conn = sqlsrv_connect($server, $cinfo);
if( $conn === false )
{
echo "Error (sqlsrv_connect): ".print_r(sqlsrv_errors(), true);
exit;
}
....
// Fetch data
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['MyDT']."<br>";
}
...
?>
- 2 回答
- 0 关注
- 144 浏览
添加回答
举报