php计算时间段的最大连续天数

如需求:最高连续打卡多少天? 或者一串数字,最大连续数字有多少个。
$nums = [‘2018-10-09‘,‘2018-10-10‘,‘2018-10-11‘,‘2018-10-13‘,‘2018-10-15‘,‘2018-10-16‘,‘2018-10-17‘,‘2018-10-18‘];
    $max  = 0;
    $hash = [];
    foreach ($nums as $val) {
        $hash[$val] = 1;
    }
    foreach ($nums as $val){
        $num = 1;
        if (!$hash[$val - 1]) {
            while($hash[++$val]) $num++;
        }
        $max = $num > $max ? $num : $max;
    } 

    echo $max;
$nums = [0, 3, 7, 2, 5, 8, 4, 6, 0, 1];
    $max  = 0;
    $hash = [];
    foreach ($nums as $val) {
        $hash[$val] = 1;
    }
    foreach ($nums as $val){
        $num = 1;
        if (!$hash[$val - 1]) {
            while($hash[++$val]) $num++;
        }
        $max = $num > $max ? $num : $max;
    } 

    echo $max;

php计算时间段的最大连续天数

上一篇:CTF-i春秋-Web-broken-2017第二届广东省强网杯线上赛-jsfuck相关知识


下一篇:jQuery实现DOM元素拖拽交换位