【问题标题】:Fatal error: Uncaught exception 'Exception' with message 'DateTime::致命错误:未捕获的异常 'Exception' 带有消息 'DateTime::
【发布时间】:2012-04-25 19:44:34
【问题描述】:

帮助修复此错误

致命错误:未捕获的异常 'Exception' 带有消息 'DateTime::_construct() [datetime.--construct]:无法在位置 0 (-) 解析时间字符串 (--):意外字符' 在 Z:\home\plati\www\view.php:110 堆栈跟踪:#0 Z:\home\plati\www\view.php(110): DateTime->_construct('--' ) #1 {main} 在第 110 行的 Z:\home\plati\www\view.php 中抛出

$newday = $a['dayz'];
$endmonth = $a['monthz'];
$newyear = $a['yearz'];
$date = new DateTime("$newyear-$endmonth-$newday");
$date->modify('+8 day');
$year = $date->format('Y');
$month = $date->format('m');
$day = $date->format('d');

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    您是否尝试过打印值"$newyear-$endmonth-$newday"?因为从错误来看,变量看起来没有填充任何内容。所以请发布该字符串的结果。

    【讨论】:

      【解决方案2】:

      帮助修复此错误

      您可以通过捕获异常轻松地处理它,这将修复错误,因为您不再需要为该错误烦恼:

      try {
          $newday = $a['dayz'];
          $endmonth = $a['monthz'];
          $newyear = $a['yearz'];
          $date = new DateTime("$newyear-$endmonth-$newday");
          $date->modify('+8 day');
          $year = $date->format('Y');
          $month = $date->format('m');
          $day = $date->format('d');
      } catch(Exception $e) {
          # do nothing
      }
      

      至少在某些时候您需要进行错误处理。异常需要你这样做,DateTime 会抛出异常。

      【讨论】:

        【解决方案3】:

        $a 中的值为空;检查您的输入。

        【讨论】:

          猜你喜欢
          • 2014-03-17
          • 2012-05-06
          • 2013-08-24
          • 2016-07-09
          • 2018-11-17
          • 1970-01-01
          • 1970-01-01
          • 2014-08-19
          • 2017-08-31
          相关资源
          最近更新 更多