0

这是一个 oscommerce 代码。我使用了引导日期选择器。但是这个日期选择器是可以工作的。我选择了开始日期和结束日期,模式也只选择了它的工作。否则,它会显示默认日期 1970/01/01。

<tr>
    <td width="100%" style="padding: 10px">
        <b><?php  echo TEXT_BEGINDATE;?></b>
        (yyyy-mm-dd):
        <input name="startdate" id="start_date" type="text" value="<? 

            if(date("Y-m-d",$report->begindate)==1970-01-01) { 
                echo date("Y-m-d",$report->begindate/*, $report->begindate*/);
            } else {
                echo date("Y-m-d",$report->begindate/*, $report->begindate*/);}
        ?>" />


        <b><?php  echo TEXT_ENDDATE;?></b>
        (yyyy-mm-dd):
        &nbsp;&nbsp;&nbsp;
        <input name="enddate" id="end_date" type="text"
            value="<?echo date("Y-m-d",$report->enddate/*, $report->enddate*/); ?>" />

<script>
$(function(){
   $('#start_date').datepicker({ dateFormat: "yy-mm-dd" });
   $('#end_date').datepicker({ dateFormat: "yy-mm-dd" });
});
</script>    
4

1 回答 1

0

PHP date 函数根据两个参数返回一个格式化的日期:

  • 第一个是显示格式
  • 第二个(可选)是时间戳

如果第二个参数小于对应于 01/01/1970 的参数,则 dat() 返回的日期仍然是 01/01/1970。

来自 php doc时间戳的有效范围通常是从 1901 年 12 月 13 日星期五 20:45:54 GMT 到 2038 年 1 月 19 日星期二 03:14:07 GMT。(这些日期对应于 32 位有符号整数的最小值和最大值)。但是,在 PHP 5.1.0 之前,此范围在某些系统(例如 Windows)上被限制为 01-01-1970 到 19-01-2038。

也许您的变量 $report->begindate 不包含适当的数据

于 2013-04-11T08:46:24.360 回答