afronden op hele dagen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tjeerd

Tjeerd

14/07/2005 12:36:00
Quote Anchor link
Hey,

Ik heb een script (heb ik al eens eerder gebruikt, met vorige record poging, en toen heb ik die gehad van iemand anders hier op het forum).

Maar nu wil ik hem opnieuw gaan gebruiken, en nu ligt de datum verder weg, nu nog meer dan 150 dagen.

Als ik de datum van onderstaande script op iets van 10 dagen verderop neerzet, dan doet hij het goed, maar als ik hem op de datum van 27 december 2005 zet, dan doet hij het niet goed, dan zegt hij van nog 166.041666667 te gaan. Maar kan dat afgerond worden?

En nog een vraagje, misschien dat iemand het weet. het bovenste gedeelte is tot aan de datum, onderste is vanaf de datum. Bij het onderste is het in dagen, uren, minuten, secondes. En bij het bovenste alleen in dagen. Is het mogelijk dat daar ook uren bij komen? bijvoorbeeld, nog 2 dagen en 7 uren te gaan.

Alvast bedankt,


Tjeerd





Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
function timecounter($start) {
    $now = time();
    if ($now < $start) {
        $timestamp = mktime(date('H', $start), date('i', $start), date('s', $start), date('m'), date('d'), date('Y'));
        $days = (($start - $timestamp) / 86400);
        $textDays = $days == 1 ? 'dag' : 'dagen';
        $output = 'Deejay Nunspeet gaat het over '.$days.' '.$textDays.' opnieuw proberen!';
    }

    else {
        $difference = ($now - $start);
        $days = floor($difference / 86400);
        $difference += (-86400 * $days);
        $hours = floor($difference / 3600);
        $difference += (-3600 * $hours);
        $minutes = floor($difference / 60);
        $textDays = $days == 1 ? 'dag' : 'dagen';
        $textMinutes = $minutes == 1 ? 'minuut' : 'minuten';
        $output = 'Deejay Nunspeet is nu al '.$days.' '.$textDays.', '.$hours.' uur en '.$minutes.' '.$textMinutes.' bezig.';
    }

    return $output;
}

echo timecounter(mktime(12, 00, 00, 12, 27, 2005));
?>
Gewijzigd op 14/07/2005 12:46:00 door Tjeerd
 
PHP hulp

PHP hulp

13/01/2025 18:19:57
 
Tjeerd

Tjeerd

14/07/2005 15:00:00
Quote Anchor link
iemand enig idee?
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 16:14:00
Quote Anchor link
is dit wat je zoekt?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$output
= 'Deejay Nunspeet gaat het over '.floor($days).' '.$textDays.' opnieuw proberen!';  
?>


edit: effe tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? ?>
gezet :)
Gewijzigd op 14/07/2005 16:15:00 door Pieter van Linschoten
 
Tjeerd

Tjeerd

14/07/2005 16:17:00
Quote Anchor link
ja klopt dat was het.

dus floor is zeg maar afronden?

En weet je ook het antwoord op mijn 2e vraag? hoe ik dat doe?
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 17:05:00
Quote Anchor link
floor() is naar beneden afronden, ceil() is naar boven afronden en dan heb je ook nog round().
floor()
ceil()
round()
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 17:17:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
function timecounter($start) {
    $now = time();
    if ($now < $start) {
        $timestamp = mktime(date('H', $start), date('i', $start), date('s', $start), date('m'), date('d'), date('Y'));
        $diff = ($start - $timestamp);
        $days = floor($diff / 86400);
        $diff += (-86400 * $days);
        $hours = floor($diff / 3600);
        $diff += (-3600 * $hours);
        $minutes = floor($difference / 60);
        $textDays = $days == 1 ? 'dag' : 'dagen';
        $textMinutes = $minutes == 1 ? 'minuut' : 'minuten';
        $output = 'Deejay Nunspeet gaat het over '.$days.' '.$textDays.' '.$hours.' uur en '.$minutes.' '.$textMinutes.' opnieuw proberen!';
    }

    else {
        $difference = ($now - $start);
        $days = floor($difference / 86400);
        $difference += (-86400 * $days);
        $hours = floor($difference / 3600);
        $difference += (-3600 * $hours);
        $minutes = floor($difference / 60);
        $textDays = $days == 1 ? 'dag' : 'dagen';
        $textMinutes = $minutes == 1 ? 'minuut' : 'minuten';
        $output = 'Deejay Nunspeet is nu al '.$days.' '.$textDays.', '.$hours.' uur en '.$minutes.' '.$textMinutes.' bezig.';
    }

    return $output;
}

echo timecounter(mktime(12, 00, 00, 12, 27, 2005));
?>
Gewijzigd op 14/07/2005 17:56:00 door Pieter van Linschoten
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 17:21:00
Quote Anchor link
Zo moet het werken... Hij heeft nu uren en zelfs minuten ;)
 
Tjeerd

Tjeerd

14/07/2005 17:52:00
Quote Anchor link
moet bij die 2e diff de + niet voor de = staan?
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 17:55:00
Quote Anchor link
jawel :p
 
Tjeerd

Tjeerd

14/07/2005 17:57:00
Quote Anchor link
okey, :-)

u word zeeeer erg bedankt voor uw hulp
 
Pieter van Linschoten

Pieter van Linschoten

14/07/2005 18:07:00
Quote Anchor link
;)
PHPhulp :)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.