Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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
PHP将时间转换为带/不带冒号的十进制_Php - Fatal编程技术网

PHP将时间转换为带/不带冒号的十进制

PHP将时间转换为带/不带冒号的十进制,php,Php,我正在尝试为工作创建一个工资计算器,他们使用十进制时间按分钟向我们支付工资。即8.5个单位,而不是8:30 由于使用这个的人数,我试图解释冒号和非冒号的使用,以及3位和4位数字(我们在24小时内工作,所以有些人将使用230而不是02:30) 到目前为止,我得到的代码是: function timeValidation($time) { $time = strpos($time, ':'); if( $time == true ) { $time = explod

我正在尝试为工作创建一个工资计算器,他们使用十进制时间按分钟向我们支付工资。即8.5个单位,而不是8:30

由于使用这个的人数,我试图解释冒号和非冒号的使用,以及3位和4位数字(我们在24小时内工作,所以有些人将使用230而不是02:30)

到目前为止,我得到的代码是:

function timeValidation($time) {
    $time = strpos($time, ':');

    if( $time == true ) {
        $time = explode(':', $time);
        $time = $time[0].$time[1];
    }

    if( strlen($time) <= 3 ) {
        $time = '0'.$time;
    }

    return $time;
}

echo $start = timeValidation($start);
函数时间验证($time){
$time=strpos($time,,:');
如果($time==true){
$time=explode(“:”,$time);
$time=$time[0]。$time[1];
}

如果(strlen($time)在试图确定函数是否有冒号时,您正在覆盖函数中的
$time
变量。请尝试以下操作:

$start = '18:30';

function timeValidation($time) {
    $isTime = strpos($time, ':');
    if( $isTime == true ) {
        $time = explode(':', $time);
        $time = $time[0].$time[1];
    }
    if( strlen($time) <= 3 ) {
        $time = '0'.$time;
    }

    return $time;
}
echo $start = timeValidation($start);
$start='18:30';
函数时间验证($time){
$isTime=strpos($time,,:');
如果($isTime==true){
$time=explode(“:”,$time);
$time=$time[0]。$time[1];
}

如果(strlen($time)在试图确定函数是否有冒号时,您正在覆盖函数中的
$time
变量。请尝试以下操作:

$start = '18:30';

function timeValidation($time) {
    $isTime = strpos($time, ':');
    if( $isTime == true ) {
        $time = explode(':', $time);
        $time = $time[0].$time[1];
    }
    if( strlen($time) <= 3 ) {
        $time = '0'.$time;
    }

    return $time;
}
echo $start = timeValidation($start);
$start='18:30';
函数时间验证($time){
$isTime=strpos($time,,:');
如果($isTime==true){
$time=explode(“:”,$time);
$time=$time[0]。$time[1];
}

如果(strlen($time)我可能误解了这个问题,但看起来你自己把它复杂化了

function standardiseTimeFormat($time) {
    $time = str_replace(':', '', $time);
    if (strlen($time) <= 3) {
        $time = '0' . $time;
    }

    return $time;
}
我得到以下结果:

1830
0330
1830
0330

编辑:稍微整理一下:

function standardiseTimeFormat($time) {
    $time = str_replace(':', '', $time);
    return str_pad($time, 4, 0, STR_PAD_LEFT);
}
如果你想要一条一行的话只是为了好玩

function standardiseTimeFormat($time) {
    return str_pad(str_replace(':', '', $time), 4, 0, STR_PAD_LEFT);
}

我可能误解了这个问题,但看起来你自己把它复杂化了

function standardiseTimeFormat($time) {
    $time = str_replace(':', '', $time);
    if (strlen($time) <= 3) {
        $time = '0' . $time;
    }

    return $time;
}
我得到以下结果:

1830
0330
1830
0330

编辑:稍微整理一下:

function standardiseTimeFormat($time) {
    $time = str_replace(':', '', $time);
    return str_pad($time, 4, 0, STR_PAD_LEFT);
}
如果你想要一条一行的话只是为了好玩

function standardiseTimeFormat($time) {
    return str_pad(str_replace(':', '', $time), 4, 0, STR_PAD_LEFT);
}


函数中的第一行覆盖您的原始时间
$time=strpos($time,,:);
您能不能先删除冒号作为替换(':','',$string)的第一件事
从那时起,你只需要使用一种格式?@brainhuong谢谢你。我这么长时间盯着它看都没看到它。@鸽子,我想我可以。我已经有几年没有编写过越来越复杂的代码了,所以我需要花点时间才能重新开始。函数的第一行覆盖了你原来的时间
$time=strpos($time,':');
您能不能先删除冒号,然后替换(':','',$string)
从那时起,你只需要使用一种格式?@brainhuong谢谢你。我盯着它看了这么久,错过了它。@鸽子,我想我可以。我已经有几年没有编写过越来越复杂的代码了,所以我需要一点时间才能重新开始。太棒了!谢谢你了。一双新鲜的眼睛真是一个奇迹太棒了。太棒了!谢谢你。一双新鲜的眼睛真是太棒了。可以用
返回sprintf(“%04d”,$time)来简化
而不是
,如果不是的话,看起来你已经完全理解了。我同意,这更整洁。我想我也可以把我的stru分割添加到这一点上,让生活更轻松。啊,酷,很高兴我能帮上忙@BigJazzz,确实根据你喜欢哪一个做了一些修改:pLol!我喜欢你。你使用“funsies”:P str_pad做什么?Ohhhh…填充字符串?可以使用
返回sprintf('%04d',$time)来简化
而不是
,如果不是的话,看起来你已经完全理解了。我同意,这更整洁。我想我也可以把我的stru分割添加到这一点上,让生活更轻松。啊,酷,很高兴我能帮上忙@BigJazzz,确实根据你喜欢哪一个做了一些修改:pLol!我喜欢你。你使用“funsies”:P.:str_pad是做什么的?哦…填充字符串?