需要提取我的数据类型" DATE"进入PHP的显示表

时间:2018-06-05 16:31:46

标签: php sql-server

需要显示的行是'。$ date [' entry_date']。'

它不会从日期数据类型的SQL Server表中拉入显示表。 我究竟做错了什么。

 <tbody>
    <?php
    $transaction_id = 1;

    while ($row = sqlsrv_fetch_array($query))
    {
        $amount  = $row['amount'] == 0 ? '' : number_format($row['amount']);

        echo '<tr>
                <td>'.$transaction_id.'</td>
                <td>'.$row['fund'].'</td>
                <td>'.$row['department'].'</td>
                <td>'.$row['code_name'].'</td>
                <td>'.$row['budget_year'].'</td>
                <td>'.$date['entry_date'].'</td>
                <td>'.$row['project_name'].'</td>
                <td>'.$row['item_desc'].'</td>
                <td>'.$amount.'</td>
                <td>'.$row['detail'].'</td>
                <td>'.$row['PO'].'</td>

            </tr>';

        $transaction_id++;
    }?>
    </tbody>

2 个答案:

答案 0 :(得分:0)

$ date应该是$ row。在您的代码中,$ date未定义。但是,$ row等于您的SQL查询结果。 $ row是一个关联数组,每个值都与SQL字段名相关联。因此,如果要显示字段'entry_date'中的值,请写$ row ['entry_date']。

答案 1 :(得分:0)

如果我理解您的问题,则无法从日期字段中获取值。 您可以通过以下方式将日期和时间类型(日期时间,日期,时间,日期时间2和日期时间偏移)检索为字符串:

将连接选项ReturnDatesAsStrings设置为true

$server = 'server\instance,port';
$cinfo = array(
    "ReturnDatesAsStrings"=>true,
    "Database"=>'database',
    "UID"=>"user",
    "PWD"=>"password"
);
...
while ($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)) {
    echo '<tr>
            <td>'.$row['entry_date'].'</td>
        </tr>';
}
...

将连接选项ReturnDatesAsStrings设置为false并格式化返回的日期字段值。

$server = 'server\instance,port';
$cinfo = array(
    "ReturnDatesAsStrings"=>false,
    "Database"=>'database',
    "UID"=>"user",
    "PWD"=>"password"
);
...
while ($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)) {
    echo '<tr>
            <td>'.date_format($row['entry_date'], 'Y-m-d').'</td>
        </tr>';
}
...