• 13-10-2024, 23:28:30
    #1
    bir projem için geliştirdiğim sistemde saat eklemem gerekiyor. ama saati ve dakikayı eklerken dakikanın ortalamasını almasını istiyorum. örneğin saat 12:31 - 12:32 ise 12:30 olarak yazmasını, 12:33 - 12:34 ise 12:35 şeklinde yazmasını istiyorum. bu dakikadaki ortalamayı nasıl yapabilirim ? ++
  • 13-10-2024, 23:32:39
    #2
    <?php
    function yuvarlaSaat($saat, $dakika) {
        // Dakikayı yuvarlama işlemi
        if ($dakika < 3) {
            $yuvarlanmisDakika = 0;
        } elseif ($dakika >= 3 && $dakika <= 7) {
            $yuvarlanmisDakika = 5;
        } elseif ($dakika >= 8 && $dakika <= 12) {
            $yuvarlanmisDakika = 10;
        } elseif ($dakika >= 13 && $dakika <= 17) {
            $yuvarlanmisDakika = 15;
        } elseif ($dakika >= 18 && $dakika <= 22) {
            $yuvarlanmisDakika = 20;
        } elseif ($dakika >= 23 && $dakika <= 27) {
            $yuvarlanmisDakika = 25;
        } elseif ($dakika >= 28 && $dakika <= 32) {
            $yuvarlanmisDakika = 30;
        } elseif ($dakika >= 33 && $dakika <= 37) {
            $yuvarlanmisDakika = 35;
        } elseif ($dakika >= 38 && $dakika <= 42) {
            $yuvarlanmisDakika = 40;
        } elseif ($dakika >= 43 && $dakika <= 47) {
            $yuvarlanmisDakika = 45;
        } elseif ($dakika >= 48 && $dakika <= 52) {
            $yuvarlanmisDakika = 50;
        } elseif ($dakika >= 53 && $dakika <= 57) {
            $yuvarlanmisDakika = 55;
        } else {
            $yuvarlanmisDakika = 0;
            $saat++;
            if ($saat == 24) {
                $saat = 0; // Eğer saat 24 olursa, yeniden 0'a ayarlıyoruz (gece yarısı)
            }
        }
    
        // Saat ve dakikayı geri döndürme
        return sprintf("%02d:%02d", $saat, $yuvarlanmisDakika);
    }
    
    // Örnek kullanım
    $saat = 12;
    $dakika = 34;
    
    echo yuvarlaSaat($saat, $dakika);  // Çıktı: 12:35
    ?>
    Not: biraz düzenleyerek time değerini tek parametre ile doğrudan verip function'ın içerisinde parse işlemi yapabilirsin return çıktısınıda hangi formatta lazımsa o şekilde alabilirsin yine. Kolay gelsin.
  • 13-10-2024, 23:43:21
    #3
    DOS adlı üyeden alıntı: mesajı görüntüle
    <?php
    function yuvarlaSaat($saat, $dakika) {
        // Dakikayı yuvarlama işlemi
        if ($dakika < 3) {
            $yuvarlanmisDakika = 0;
        } elseif ($dakika >= 3 && $dakika <= 7) {
            $yuvarlanmisDakika = 5;
        } elseif ($dakika >= 8 && $dakika <= 12) {
            $yuvarlanmisDakika = 10;
        } elseif ($dakika >= 13 && $dakika <= 17) {
            $yuvarlanmisDakika = 15;
        } elseif ($dakika >= 18 && $dakika <= 22) {
            $yuvarlanmisDakika = 20;
        } elseif ($dakika >= 23 && $dakika <= 27) {
            $yuvarlanmisDakika = 25;
        } elseif ($dakika >= 28 && $dakika <= 32) {
            $yuvarlanmisDakika = 30;
        } elseif ($dakika >= 33 && $dakika <= 37) {
            $yuvarlanmisDakika = 35;
        } elseif ($dakika >= 38 && $dakika <= 42) {
            $yuvarlanmisDakika = 40;
        } elseif ($dakika >= 43 && $dakika <= 47) {
            $yuvarlanmisDakika = 45;
        } elseif ($dakika >= 48 && $dakika <= 52) {
            $yuvarlanmisDakika = 50;
        } elseif ($dakika >= 53 && $dakika <= 57) {
            $yuvarlanmisDakika = 55;
        } else {
            $yuvarlanmisDakika = 0;
            $saat++;
            if ($saat == 24) {
                $saat = 0; // Eğer saat 24 olursa, yeniden 0'a ayarlıyoruz (gece yarısı)
            }
        }
    
        // Saat ve dakikayı geri döndürme
        return sprintf("%02d:%02d", $saat, $yuvarlanmisDakika);
    }
    
    // Örnek kullanım
    $saat = 12;
    $dakika = 34;
    
    echo yuvarlaSaat($saat, $dakika);  // Çıktı: 12:35
    ?>
    Not: biraz düzenleyerek time değerini tek parametre ile doğrudan verip function'ın içerisinde parse işlemi yapabilirsin return çıktısınıda hangi formatta lazımsa o şekilde alabilirsin yine. Kolay gelsin.
    çok teşekkür ederim.