将时间字符串(HH:MM)乘以PHP中的整数

将时间字符串(HH:MM)乘以PHP中的整数,php,datetime,time,date-arithmetic,Php,Datetime,Time,Date Arithmetic,我希望乘以2个变量,使其中一个为小时格式(hh:mm), 我怎样才能做到?我得到的答案是0: <?php $num = 5; $timeUnit = "00:01"; $waitingTime = $num * $timeUnit; echo $waitingTime; 您不能用这种方式计算字符串和数字 你所要做的就是创建一个函数/方法来实现你想要的行为并使用它 $num=20; $timeUnit="00:03"; $time=explode(":",$timeUnit); $w

我希望乘以2个变量,使其中一个为小时格式(hh:mm), 我怎样才能做到?我得到的答案是0:

<?php
$num = 5;
$timeUnit = "00:01";

$waitingTime = $num * $timeUnit;  
echo $waitingTime;

您不能用这种方式计算字符串和数字

你所要做的就是创建一个函数/方法来实现你想要的行为并使用它

$num=20;
$timeUnit="00:03";
$time=explode(":",$timeUnit);
$waitingTime=$num*$time[1];
$sec=$time[0]+$waitingTime%60;
$hour=floor($waitingTime/60);
$timeUnit1="".$hour.":".$sec."";
$current=strtotime($timeUnit1); //seconds of current time
echo date("H:i",$current);

你可以这样做

希望这对你有帮助

$num=100;
$timeUnit="00:02";
$timeUnit;
$time=explode(":",$timeUnit);
$waitingTime=$num*$time[1];
$minute = sprintf("%02d", ($waitingTime%60));
$hour = sprintf("%02d", ($waitingTime/60));
$current_time = floor($hour).':'.($minute);
echo $current_time;

我最终将时间转换为秒,进行乘法运算,并再次将其转换为“时间格式”:


感谢您的帮助

当您的值乘以5*00:01时,您期望得到什么?没有
时间
变量类型,只有
字符串
。将字符串与数字相乘。你的目标是什么?数值应该只乘以分钟还是与小时相关?(
5*“13:22”的“期望”输出是什么
?num可以是任何数字,但时间单位总是以分钟为单位。例如:100*00:02=200min,其中是3:20。我想他是在问如何将给定的时间(以HH:MM为单位)乘以一个整数。因此,虽然角度不错,但我认为他在PHP语法和标准库方面有误导,根本不知道如何乘以时间。编辑为一个非常简单的例子回答,是吗?:)你可以做
echo5*“5”它将回显25。@Daan这对于简单表达式来说是可以的,但是如果他想计算一个给定的“HH:MM:SS”表达式呢?这就是我从他的问题中了解到的,也许我做错了,他需要乘法而不是加法。是的,我需要乘法而不是像预期的那样工作。如果我将时间单位更改为:$timeUnit=“00:03”;我的$num=20;我的答案应该是:01:00(HH:MM),但我得到了不同的答案(3:00)。如果我想按4:30小时乘以1000卢比怎么办?
$num=200;
$timeUnit="00:01:00";
$time=explode(":",$timeUnit);
$sec=$time[1]*60;
$sec=$sec*$num;

$diff = $sec;
$format = sprintf('%02d:%02d:%02d', ($diff / 3600), ($diff / 60 % 60), $diff % 60);
echo $format;