从 mssql 服务器获取日期


Getting a date from mssql server

我有这个脚本,有点最简单,最简单的发布到我的数据库它看起来像这样:最有趣的部分是我猜的日期,因为它是我遇到问题

<?php
error_reporting(E_ALL); ini_set('display_errors', 1);
$head =  $_POST['title'];
$bread = $_POST['html'];
$author = $_POST['selectlist1'];
$postdate = date('Y-m-d H:i:s');
$cat = $_POST['selectlist2'];
$db = new PDO('sqlsrv:server=localhost;Database=blog', '******', '*******');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = 'INSERT INTO dbo.blog_posts (blog_title, blog_post, blog_author, blog_date, blog_category) VALUES (:head, :bread, :author, :postdate, :cat)';
$query = $db->prepare( $sql );
$query->execute( array(':head'=>$head, ':bread'=>$bread, ':author'=>$author, ':postdate'=>$postdate, ':cat'=>$cat ) );
?>

blog_date列是"日期时间",默认值是(getdate(((

我的脚本中从数据库中获取值的有趣部分:

 $result = sqlsrv_query($con,"SELECT TOP 10 * FROM blog_posts ORDER BY blogID DESC");
                while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_BOTH)) 
echo $row['blog_date']

错误:

可捕获的致命错误:无法转换类 DateTime 的对象 到 C:''inetpub''wwwroot''blog''index.php 第 52 行中的字符串

尝试了许多不同的解决方案,但我似乎无法让它按预期工作,它将正确的值存储在数据库中

尝试更改它:

echo $row['blog_date'];

自:

echo date_format($row['blog_date'], 'Y-m-d H:i:s');