-3
function secondsToTime($inputSeconds) {

   $secondsInAMinute = 60;
   $secondsInAnHour  = 60 * $secondsInAMinute;
   $secondsInADay    = 24 * $secondsInAnHour;

    $days = floor($inputSeconds / $secondsInADay);

   $hourSeconds = $inputSeconds % $secondsInADay;
   $hours = floor($hourSeconds / $secondsInAnHour);

    $minuteSeconds = $hourSeconds % $secondsInAnHour;
    $minutes = floor($minuteSeconds / $secondsInAMinute);


    $remainingSeconds = $minuteSeconds % $secondsInAMinute;
    $seconds = ceil($remainingSeconds);

    $obj = array(
        'd' => (int) $days,
        'h' => (int) $hours,
        'm' => (int) $minutes,
        's' => (int) $seconds
    );

    return $obj;
}

这个函数给了我一个错误:

Parse error: syntax error, unexpected T_STRING on line 6

我这样称呼它:

$start = new DateTime('2010-10-12');
$end = new DateTime('2010-10-14');
$seconds = round(abs($end->format('U') - $start->format('U')));
$obj = secondsToTime($seconds);
4

2 回答 2

3

除非它是您的示例中的拼写错误,否则您没有评论extract the remaining seconds,您需要//在它之前添加:

// extract the remaining seconds
于 2012-10-31T16:45:45.287 回答
0

我测试了你的代码,它显然有效。

但是,我不久前遇到了类似的问题。我的代码在本地工作,但是当上传到服务器时它会抛出“Unexpected T_STRING ...”。几个小时后,我发现字符集已更改,并且在脚本文件的开头插入了一些随机的额外字符。

不知道这是否适用于您的情况或是否对您有帮助。但是你可以尝试在一个好的文本编辑器中打开你的文件来检查字符集和意外字符。

于 2012-11-01T19:59:26.217 回答