0

テーブルからのみ日付を取得し、それを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 のオブジェクトを文字列に変換できませんでした

ありがとうございました。

4

2 に答える 2

1

あなたのコード

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

echo $data1; 

結果の各行で機能しますが、関連する場合にのみ最後の行が表示されます。これはおそらくあなたの問題ですか?

于 2012-04-27T09:21:22.713 に答える
1

エラー メッセージが示すように、既にDateTimeオブジェクトがあります。

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

これは、日付を持つネイティブ PHP 変数です。ドライバーがあなたのためにそれを行います!

于 2012-04-27T09:46:20.103 に答える