php tag 遇到的格式不正确




php移除html tag (7)

$_GET['start_date']不是数字是我的赌注,但strtotime不支持日期格式。 您需要将日期重新格式化为适合时间的可操作格式,或使用explode / mktime组合。

如果您愿意发布您目前收到的格式,我可以为您添加一个示例。

我有一个表单将两个日期(开始和结束)传递给一个将脚本添加到数据库的PHP脚本。 我有问题验证这一点。 我不断收到以下错误

遇到的格式不正确

这是当我使用以下

date("d",$_GET['start_date']);

但是,当我使用strtotime()函数的建议很多网站时,我得到一个unix时间戳日期为1/1/1970。 任何想法我怎么能得到正确的日期?


因为您将一个字符串作为第二个参数传递给date函数,该函数应该是一个整数。

string date(string $ format [,int $ timestamp = time()])

尝试使用strtotime任何英文文本日期时间描述解析为Unix时间戳 (整数):

date("d", strtotime($_GET['start_date']));

如果错误发生在任何计算时,请仔细检查这些值是否包含逗号(,)。 值必须只能是整数/浮点格式。


这帮了我很多 -

$new_date = date_format(date_create($old_date), 'Y-m-d');

您需要使用date_default_timezone_set()设置时区。


只需使用strtotime()函数即可解决此问题。

date("d",strtotime($_GET['start_date']));

这是一个古老的问题,但这种信息可能会发生另一种微妙的方式。 这里解释得非常好,在文档中

想象一下这个场景:

try {
  // code that triggers a pdo exception
} catch (Exception $e) {
  throw new MyCustomExceptionHandler($e);
}

MyCustomExceptionHandler大致是这样定义的:

class MyCustomExceptionHandler extends Exception {
  public function __construct($e) {
    parent::__construct($e->getMessage(), $e->getCode());
  }
}

这实际上会在自定义异常处理程序中触发一个新的异常,因为Exception类在构造函数中需要第二个参数的数字,但是PDOException可能会动态地将$e->getCode()的返回类型更改为字符串。

解决这个问题的方法是定义你自定义的异常处理程序,如:

class MyCustomExceptionHandler extends Exception {
  public function __construct($e) {
    parent::__construct($e->getMessage());
    $this->code = $e->getCode();
  }
}




time