我是一个使用以下内容的脚本:
计划开始的计划开始时间
计划开始日期 - 计划开始的日期
脚本总计 - 进程需要多长时间
script - 脚本中的当前点
所以它的工作方式是
预期结束=计划开始时间/日期+脚本总数
实际结束=当前时间/日期+(脚本总数 - 以小时为单位的脚本) -
我无法解决此问题:
$currentpoint = $row['script']; //current point
$progress = $row['scriptotal'] - $currentpoint; //gives hours rem till fin
$actdate ="+".$progress." hours";
$actual = date("Y-m-d h:i:s",strtotime("".$actdate.""));
echo $actual; // this looks like it working
以上是正在制定的实际日期,它似乎正在运作 接下来是我遇到麻烦的预计日期
$date1 = "".$row['planned_start_date']. " " .$row['planned_start_time']."";
$expdate= "+".$row["scriptotal"]." hours";
$expectdate = date("Y-m-d h:i:s", $date1);
$expecteddate = date("Y-m-d h:i:s", strtotime("".$expdate."");
echo $expecteddate; // get output but 1970 is year.
我得到两者的输出但是一年是1970年?我的脚本中也出现错误:“遇到一个非常好的数值”。
帮助解决上述问题的解决方案或:
当前日期时间+ int(表示小时数) &安培; 日期timw + int(表示小时数)会有所帮助。我认为我的实际工作正在发挥作用。
提前致谢
答案 0 :(得分:0)
$date1 = "".$row['planned_start_date']. " " .$row['planned_start_time']."";
$expectdate = date("Y-m-d h:i:s", $date1);
date()期望第二个参数是一个unix时间戳(整数),我可以假设$date1
不是。
$expecteddate = date("Y-m-d h:i:s", strtotime("".$expdate."");
您错过了结束)
。同样使用"".
和.""
在这里毫无意义。您还可能需要验证$row["scriptotal"]
是否为整数。如果它返回null或非整数,它将失败。