Tìm kiếm nhanh

Share funtion đọc thời gian như Facebook

Thảo luận trong 'Coding' đăng bởi loveall123, 10/08/2016 00:15.

  • Bạn nào có code hay hơn đường chém em nhé. Em cũng góp phong trào cho diễn đàn thôi.

     

    Phần funtion

    function nv_time_format( $time )
    {
        global $lang_module;
        $output = '';
    
        $at_time = NV_CURRENTTIME - $time;
        if( $at_time > 31536000 ) //nam truoc
        {
            $output = floor( $at_time/31536000 ) . " " . $lang_module['yearago'];
        }
        elseif( $at_time > 2592000 ) //thang truoc
        {
            $output = floor( $at_time/2592000 ) . " " . $lang_module['monthsago'];
        }
        elseif( $at_time > 86400 )
        {
            $output = floor( $at_time/86400 ) . " " . $lang_module['daysago'];
        }
        elseif( $at_time > 3600 )
        {
            $output = floor( $at_time/3600 ) . " " . $lang_module['housago'];
        }
        elseif( $at_time > 60 )
        {
            $output = floor( $at_time/60 ) . " " . $lang_module['minago'];
        }
        elseif( $at_time > 0 )
        {
            $output = $lang_module['attime'];
        }
        return $output;
    }

    Thêm ngôn ngữ:

     

    $lang_module['yearago'] = 'năm trước';
    $lang_module['monthsago'] = 'tháng trước';
    $lang_module['daysago'] = 'ngày trước';
    $lang_module['housago'] = 'giờ trước';
    $lang_module['minago'] = 'phút trước';
    $lang_module['attime'] = 'Vừa xong';

    Sử dụng:

    $time = nv_time_format( $thoigiandangbai ); //1470675600
    
    echo( $time ); //1 ngay truoc

    Để tránh trường hợp lỗi font, các bạn lười gõ lại, mình gửi kèm theo file php bên dưới

     

    Tệp đính kèm:

    anpy.ceo thích điều này.
  • anhyeuviolet

    anhyeuviolet Kenny Nguyen

    Góp vui

    function humanTiming($time)
    {
        global $lang_module;
        $time = time() - $time; // to get the time since that moment
        $time = ($time < 1) ? 1 : $time;
        $tokens = array(
            31536000 => $lang_module['year'],
            2592000 => $lang_module['month'],
            604800 => $lang_module['week'],
            86400 => $lang_module['day'],
            3600 => $lang_module['hour'],
            60 => $lang_module['minute'],
            1 => $lang_module['second']
        );
        foreach ($tokens as $unit => $text) {
            if ($time < $unit)
                continue;
            $numberOfUnits = floor($time / $unit);
            return $numberOfUnits . ' ' . $text;
        }
    }

     

    Lang:

    $lang_module['year'] = 'năm trước';
    $lang_module['month'] = 'tháng trước';
    $lang_module['week'] = 'tuần trước';
    $lang_module['day'] = 'ngày trước';
    $lang_module['hour'] = 'giờ trước';
    $lang_module['minute'] = 'phút trước';
    $lang_module['second'] = 'giây trước';

    Cách dùng tương tự trên thôi

    $array_row_i['publtime'] = humanTiming($array_row_i['publtime']);

     

     
    anpy.ceo thích điều này.
  • anpy.ceo

    anpy.ceo David An

     

    mình chèn vào đâu để hiện thị bác 

     
  • anhyeuviolet

    anhyeuviolet Kenny Nguyen

    Cái function thì có thể đưa vào global.functions.php để dùng chung trong 1 module.

    Còn Lang thì chắc chắn là vi.php ( hoặc en.php ).

    Còn dùng thì đưa vào theme.php của file để xử lý trước khi xuất ra giao diện.

     
    anpy.ceo thích điều này.

Chia sẻ trang này

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây