我是靠谱客的博主 温婉花卷,最近开发中收集的这篇文章主要介绍php 数字区间的显示,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目中有旅行路线的最佳旅行时间,显示方式要将时间变成区间的显示方式,如:将 1,3,5,7,9,10,11 变成 1,3,5,7,9-11这种显示方式,实现方法如下:

$time = array(1,3,5,7,9,10,11);//注意时间是从小到大排好序的,如果不知道怎么排序请参考

function dealWithTime($time) { 
    $r = array();
    $r[] = array('min' => $time[0], 'max' => $time[0]);
    $c = 0;
    for($i = 1, $j = count($time); $i < $j ; $i++){
        $v = $time[$i];
        if($r[$c]['max'] == $v - 1){
            $r[$c]['max'] = $v;
        }else{
            $r[] = array('min' => $v, 'max' => $v);
            $c++;
        }
    }
    $str = '';
    foreach ($r as $k => $v){
        if($v['min'] == $v['max']){
            if($k == 0){
                $str .= $v['max'];
            }else{
                $str .= ',' . $v['max'];
            }
        }else{
            if($k == 0){
                 $str .= $v['min'] . '-' . $v['max'];
            }else{
                 $str .= ',' . $v['min'] . '-' . $v['max'];
            }
        }
    }
    return $str;
}

var_dump(dealWithTime($time)); //输出 string(12) "1,3,5,7,9-11"

最后

以上就是温婉花卷为你收集整理的php 数字区间的显示的全部内容,希望文章能够帮你解决php 数字区间的显示所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部