为什么我的输入框显示1969年12月31日?

时间:2016-11-01 07:57:25

标签: php

它应该是空白的。我怎样才能防止这种情况发生? 我使用此代码显示日期

import sys

list1 = ' '.join(sys.argv[1:])

def main():
  print list1

if __name__ == '__main__':
    main()

我认为我需要做些什么:

  

$ str = date(' M.d,Y',strtotime($ books));

2 个答案:

答案 0 :(得分:2)

如果您要返回 false ,则默认日期为1969年12月31日。我的意思是,如果您没有找到任何 $ chalet 值。您可以通过返回默认日期来避免它,也可以检查返回的 false 值,并在视图中添加空日期或默认日期。

如果它无法解决您的问题,请检查 $ book 是否为空。

<强>更新

感谢您的恭维。更多的想法,你不能删除其他部分。因为如果你的条件不满足,那么将不会返回任何内容。所以你什么都得不到。为此,您可以返回当前日期日期('M.d,Y')(不确定它是否与您的功能相匹配)。最好设置当前日期而不是使用默认日期。所以你的代码可能是这样的

public function bookedOn($chalet_id) {
    $chalet = \App\Chalet::where('chalet_id', '=', $chalet_id)->get();
    if ($chalet->count() > 0) {
        $books = \App\EventBookings::where('chalet_id', '=',  $chalet[0]->chalet_id)->value('created_at');

        if(!empty($books)){
            $str = date('M. d, Y',strtotime($books));
        }else{
            $str = date('M. d, Y');
        }

        return $str;
    } else {
        return date('M. d, Y');
    }
}

答案 1 :(得分:1)

试试这样:

public function bookedOn($chalet_id) {
    $chalet = \App\Chalet::where('chalet_id', '=', $chalet_id)->get();
    if ($chalet->count() > 0) {
        $books = \App\EventBookings::where('chalet_id', '=', $chalet[0]->chalet_id)->value('created_at');
        if ($books == '') {
            // some default date
            $books = '2010-01-01';
        }
        $str = date('M. d, Y',strtotime($books));
        return $str;
    } else {
        return false;
    }
}