【问题标题】:Call to a member function format() on a non-object date format以非对象日期格式调用成员函数 format()
【发布时间】:2015-06-07 22:32:48
【问题描述】:

我有这个代码, 我不知道为什么当我运行我的文件时它说

致命错误:在第 26 行的 /membri/bestparty/IOS/IOS/Scrittura_dati.php 中的非对象上调用成员函数 format()

这里是代码

<?php
$festa = $_POST['festa'];
$data = $_POST['data'];
$luogo = $_POST['luogo'];
$prezzo = $_POST['prezzo'];
$prezzosp = $_POST['prezzosp'];
$lista = $_POST['nliste'];
$linkevento = $_POST['linkevento'];
$servbus = $_POST['servbus'];
$bottmin = $_POST['bottmin'];
$org = $_GET['org'];
$buynow = $_POST['buynow'];
if ($buynow == 'yes') {
    $buynow = 1;
}
else {
    $buynow = 0;
}
$date = DateTime::createFromFormat('d-m-Y', $data);
$date_out = $date->format('Y-m-d');
$data = $date_out;

$nomeimg = $festa;
$nomeimg = str_replace(' ', '_', $nomeimg);

【问题讨论】:

  • 我们可以有var_dump($_POST['data']);吗?
  • createFromFormat 在失败时返回一个新的 DateTime 实例或 FALSE,因此您在不是对象实例的类型上调用格式函数。

标签: php html date time formatdatetime


【解决方案1】:

替换这部分代码:

$date = DateTime::createFromFormat('d-m-Y', $data);
if (!$date || $date->format('d-m-Y') != $data) {
    exit("Date '$data' is invalid or format is not 'd-m-Y'!");
}
$data = $date->format('Y-m-d');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    相关资源
    最近更新 更多