语法意外T_STRING

时间:2012-10-31 16:44:44

标签: php

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);

2 个答案:

答案 0 :(得分:3)

除非您的示例中有拼写错误,否则您未对extract the remaining seconds发表评论,您需要在其前添加//

// extract the remaining seconds

答案 1 :(得分:0)

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

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

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