Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 转换<;输入类型=";时间“&燃气轮机;浮动小时数JS/PHP的值(作为持续时间)_Javascript_Php_Jquery_Html_Forms - Fatal编程技术网

Javascript 转换<;输入类型=";时间“&燃气轮机;浮动小时数JS/PHP的值(作为持续时间)

Javascript 转换<;输入类型=";时间“&燃气轮机;浮动小时数JS/PHP的值(作为持续时间),javascript,php,jquery,html,forms,Javascript,Php,Jquery,Html,Forms,我有一个数据库表,其中一个字段“Duration”是浮点类型而不是时间,即3.5小时而不是“03:30:00”。这样做是为了提高数据库性能和简化编程。 出于UI原因,我正在将前端表单字段更新为 <input id="duration" type="time"> 在JS或PHP中: function timeToFloat( $duration ){ $duration = explode(":", $duration); array_pop($duration

我有一个数据库表,其中一个字段“Duration”是浮点类型而不是时间,即3.5小时而不是“03:30:00”。这样做是为了提高数据库性能和简化编程。 出于UI原因,我正在将前端表单字段更新为

<input id="duration" type="time">
在JS或PHP中:

function timeToFloat( $duration ){

     $duration = explode(":", $duration);
     array_pop($duration);
     return $duration[0] + numberFormat( $duration[1] / 60, 2 );

}
有人知道得更清楚吗?

只需在MySql中执行即可

选择时间到秒('03:30:00')/3600;

3.5000

除非我误解了你的问题,否则你可以尝试type=“number”如果你只是问如何在插入数据库之前将时间转换为浮动时间,我会问你为什么要在前端而不是后端执行此操作。出于用户界面的原因,我需要根据客户的请求将其设置为type=“time”,但我希望将这些值保持为浮点值,以便于使用和性能。前端/后端并不重要。html5的时间和数字有不同的允许值。如果你的意思是你想把它设为一个浮动,但这是一个时间,我不确定这是可能的。关于前端与后端,从安全的角度来看,这确实有点重要,因为后端完全在您的控制之下,依赖前端为您提供正确的数据是一回事,后端验证输入并将其转换为所需的格式是另一回事。我想这可能可以做到。我可以在插入行时执行此操作吗?比如,
“在表(a,b,c)中插入值(1,2,时间到秒('03:30:00')/3600)”?
可以,您可以使用
秒到秒转换回时间
function timeToFloat( $duration ){

     $duration = explode(":", $duration);
     array_pop($duration);
     return $duration[0] + numberFormat( $duration[1] / 60, 2 );

}