如何从SQL服务器日期时间列中检索日期并存储在php变量中?

时间:2012-04-27 09:18:55

标签: php sql-server-2008

我试图仅从我的表中检索日期并将其存储在php变量中,以便我可以在何时何地回复它。以下是我尝试这样做的方法:

$query3 = "select o.orderID,
o.orderDate

from orders o
join order_items i on o.orderID = i.orderID
where o.customerID = '" . $customerID . "'";

    $result3 = sqlsrv_query( $conn, $query3, array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));

if( $result3 === false)
{
    echo "Error in query preparation/execution.\n";
    die( print_r( sqlsrv_errors(), true));
}

     while( $row = sqlsrv_fetch_array ( $result3, SQLSRV_FETCH_ASSOC))
    {
        $data1 = $row['orderDate']; 
    }

echo $data1;

我已经尝试过date()方法,我可以在屏幕上获取日期,但不是从数据库中选择的特定日期。在回应它之前,我是否需要转换它?

我得到的错误是:

捕获致命错误:类DateTime的对象无法转换为字符串

谢谢。

2 个答案:

答案 0 :(得分:1)

您的代码

     while( $row = sqlsrv_fetch_array ( $result3, SQLSRV_FETCH_ASSOC)) 
    { 
        $data1 = $row['orderDate'];  
    } 

echo $data1; 

通过结果的每一行,但仅显示最后一行的相关性。这可能是你的问题吗?

答案 1 :(得分:1)

您已经有一个DateTime对象,如错误消息所示:

Catchable fatal error: Object of class DateTime could not be converted to string
                       ^^^^^^^^^^^^^^^^^^^^^^^^

这是一个带有日期的本机PHP变量。司机为你做了!