我正在尝试从mssql服务器表中提取数据以使用php在网页中打印html表,我正在拉下的数据是"日期时间"列,当我运行脚本时,我收到错误消息说" 类的对象日期时间无法转换为字符串"
下面是我的脚本。谁能指出我正确的方法?提前非常感谢你。
$sql = "SELECT DateCreated FROM Item WHERE Inactive = '0' ";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
$html_table = '<table border="1" cellspacing="0" cellpadding="2">';
$html_table .= '<tr><td width="100" align="center">' .$row['DateCreated'].'</td></tr>';
$html_table .= '</table>';
echo $html_table;
}
sqlsrv_free_stmt( $stmt);
一种方法是让 SQL 引擎本身在第一行代码中返回一个字符串值。 在 PHP 端可能会有更多的转换方式,但我在这方面的工作并不那么好。
$sql = "SELECT CONVERT(varchar(10), DateCreated, 101) AS DateCreatedString
FROM Item WHERE Inactive = '0' ";
您可以使用 Microsoft 本指南中的第三个参数修改许多其他日期格式标准。 我使用的 101 以 mm/dd/yyyy 格式返回日期,但实际上阳光下的每种格式,包括时间、月份名称、世纪、毫秒等,都可以使用其他代码之一返回。