意外的日期输出


Unexpected date Output

我想在我当前的order_date中添加30天,它是自动从db检索的,并显示提前30天的日期。但是我得到的结果是这样的14437368002015-11-01当order_date是2015-10-01 1443736800在日期之前被添加。请帮助!

while($row = mysqli_fetch_array($query)){

echo '<tr>'.
                                '<td align="center">'.$row['order_no'].'</td>'.
                                    '<td align="center">'.$row['order_date'].'</td>'.
                                    '<td align="center">'.$row['store_used'].'</td>'.
                                    '<td align="center">'.$row['status'].'</td>'.
                                    '<td align="center">'.'Rs.'.$row['cashback'].'</td>'.
                                    '<td align="center">'.$date = strtotime($row['order_date']);
$date = strtotime("+30 day", $date);
echo date('Y-m-d', $date);'</td>'.  
                                    '</tr>';
                            }
                            echo '</tbody></table></form>'."'n'n";
                mysqli_close($dbc2);
                ?>

结果:

Order ID    Order Date  Store Used  Status          Cashback    Est.Cashback.Date
134         2015-10-02  Flipkart    To be Checked   Rs.         14437368002015-11-01

似乎你有简单的连接问题,你也可以直接使用date函数,如

'<td align="center">'.date('Y-m-d',strtotime("{$row['order_date']} +30 days")).'</td>'.  

从你的代码来看,你的代码似乎重复了两次date

'<td align="center">'.$date = strtotime($row['order_date']);//starting of td

echo date('Y-m-d', $date);'</td>'. //ending of td

这应该为您工作,您没有将日期转换为strtotime()之后,因此将其转换为date()

$date = strtotime("2015-10-01");
$date = date("Y-m-d",strtotime("+30 day", $date));
echo $date;// outputs 2015-10-31