Hướng dẫn tuỳ biến publtime Nukeviet 4

Thứ tư - 13/04/2022 10:29
Mình thấy 1 số bạn có nhu cầu tuỳ biến publtime thành dạng 'vừa xong', 'x phút trước', 'x giờ trước', 'x tháng trước',.... Dưới đây là hướng dẫn các bước thực hiện.
tuỳ biến publtime

B1. Thêm hàm nv_publtime_text vào global.functions.php hoặc functions.php của module (Tuỳ vào module cụ thể để thêm cho phù hợp)
 
function nv_publtime_text($timestamp, $full = false)
{
    $now = new DateTime;
    $ago = new DateTime('@' . $timestamp);
    $diff = $now->diff($ago);
    $diff->w = floor($diff->d / 7);
    $diff->d -= $diff->w * 7;
    $string = [
        'y' => 'năm',
        'm' => 'tháng',
        'w' => 'tuần',
        'd' => 'ngày',
        'h' => 'giờ',
        'i' => 'phút',
        's' => 'giây'
    ];

    foreach ($string as $k => &$v) {
        if ($diff->$k) {
            $v = $diff->$k . ' ' . $v;
        } else {
            unset($string[$k]);
        }
    }

    if (!$full) $string = array_slice($string, 0, 1);
    return $string ? implode(', ', $string) . ' trước' : 'Vừa xong';
}

B2. Thực hiện gọi hàm 
 
$row['publtime'] = nv_publtime_text($row['publtime']);

Mọi thắc mắc có thể comment hoặc inbox zalo 0982 083 283 mình sẽ hỗ trợ.

Chúc các bạn thành công

Tác giả: BCB SOLUTIONS

Tổng số điểm của bài viết là: 50 trong 10 đánh giá

Xếp hạng: 5 - 10 phiếu bầu
Click để đánh giá bài viết

  Ý kiến bạn đọc

Những tin mới hơn

Những tin cũ hơn

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