zoukankan      html  css  js  c++  java
  • PHP 转换snmp的时间格式

    function convert_snmp_timeticks($timeticks) {
        if(!is_numeric($timeticks)) {
            return FALSE;
        }
        
        //如果是字符串类型,则先进行转换
        if(is_string($timeticks)) {
            $timeticks = intval($timeticks);
        }
        
        $TICKS_PER_SECOND = 100;
        $TICKS_PER_MINUTE = $TICKS_PER_SECOND * 60;
        $TICKS_PER_HOUR   = $TICKS_PER_MINUTE * 60;
        $TICKS_PER_DAY    = $TICKS_PER_HOUR * 24;
        
        $seconds = $timeticks / $TICKS_PER_SECOND % 60;
        $minutes = $timeticks / $TICKS_PER_MINUTE % 60;
        $hours   = $timeticks / $TICKS_PER_HOUR   % 24;
        $days    = $timeticks / $TICKS_PER_DAY;
        
        return sprintf("%d天, %d小时%02d分%02d秒", $days, $hours, $minutes, $seconds);
    }
    
    echo convert_snmp_timeticks("81090200");

    输出:
        9天, 9小时15分02秒

    更简单的方式,使用php官网的例子

    if(@ $sysUpTime = snmpget("127.0.0.1", "public", "iso.3.6.1.2.1.1.3.0")){
        if(snmp_get_quick_print()){
           sscanf($sysUpTime, "%d:%d:%d:%d.%d",$day,$hour,$minute,$sec,$ticks);
            $sysUpTime = "$day days, $hour:$minute:$sec.$ticks";
        }else{
           $sysUpTime = ereg_replace("Timeticks: ([0-9]+) ","",$sysUpTime);
       }
    }
    var_dump($sysUpTime);

    输出:

        string(18) "9 days, 9:28:37.00"

  • 相关阅读:
    js快速排序
    蛇形数组
    大臣的旅费
    1724ROADS
    2738:实数加法
    完整版高精度计算(整理后的)
    2737:大整数除法
    2980:大整数乘法
    2736大整数减法,3180 整数减法
    2981:大整数加法
  • 原文地址:https://www.cnblogs.com/Jim-william/p/5077721.html
Copyright © 2011-2022 走看看