Countdown

Door Gerben pHp, 16 jaar geleden, 17.999x bekeken

Een snippet waarbij je het aantal dagen, uren, minuten en seconden krijgt vanaf/tot een bepaalde datum.

Bijv:
Aftellen vanaf '1 january 2011' naar '1 january 2013' levert '731 dagen' (schrikkeljaar) op.
Aftellen vanaf '1 january 2011 13:45' naar '1 january 2013' levert '730 dagen, 10 uren en 15 minuten' op.

Het script houdt rekening met schrikkeljaren, maakt de string op (komma's, en), en is eventueel ook engels te krijgen (alle variabelen in het engels zetten).

Testomgeving:
Mac OS X Lion 10.7
MAMP 2.0.5
Tijdzone Europe/Berlin (GMT+0100)

Gesponsorde koppelingen

PHP script bestanden

  1. countdown.php

 

Er zijn 3 reacties op 'Countdown'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Bas IJzelendoorn
Bas IJzelendoorn
16 jaar geleden
 
0 +1 -0 -1
Ik twijfel over het nut van dit script. Er zijn tegenwoordig best veel javascript/jquery oplossingen hiervoor. Dan wel geen php maar het loopt wel mooi af per seconde. Ik vind het nogal een lap code, waarbij ik het idee heb dat het volgens mij korter kan.


16 jaar geleden
 
0 +1 -0 -1
Een andere PHP countdown. Maar zoals Bas al zei, ik zou ook voor een jQuery / JavaScript variant gaan, want anders moet je die file hier de hele tijd met AJAX requests aanvragen en dat is ook niet de bedoeling denk ik.

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
31
32
33
34
35
36
37
38
39
40
41
42
<?php
    
    // Work with the numbers below:
    function countdown() {
    
        // The countdown date:
        $Year        = 2011;
        $Month        = 12;
        $Day        = 18;
        $Hours        = 16;
        $Minutes    = 0;
        $Seconds    = 0;
        
        // Countdown time:
        $Date = mktime($Hours, $Minutes, $Seconds, $Month, $Day, $Year, -1);
        
        // Date today:
        $Time = time();
    
        // Different between the two:
        $Different = $Date - $Time;
        (
$Different < 0) ? $Different = 0 : false;
    
        // Calculate the remaining days, ours and minutes:
        $RemainingDays = floor($Different/60/60/24);
        $RemainingOurs = floor(($Different - $RemainingDays*60*60*24)/60/60);
        $RemainingMinutes = floor(($Different - $RemainingDays*60*60*24 - $RemainingOurs*60*60)/60);
        $RemainingSeconds = floor(($Different - $RemainingDays*60*60*24 - $RemainingOurs*60*60 - $RemainingMinutes*60));
    
    // onderstaande 3 regels zullen te zien zijn op uw scherm
    echo '
    <span class="launching">Lanceer datum binnen:</span>
    <div id="time">
        <div class="stamp">'
.$RemainingDays.'<div class="cd-time">dagen</div></div>
        <div class="stamp">'
.$RemainingOurs.'<div class="cd-time">uren</div></div>
        <div class="stamp">'
.$RemainingMinutes.'<div class="cd-time">minuten</div></div>
        <div class="stamp">'
.$RemainingSeconds.'<div class="cd-time">seconden</div></div>
    </div>'
; }
    
    countdown();
    
?>
Kris Peeters
Kris Peeters
16 jaar geleden
 
0 +1 -0 -1
Wat dacht je van simpelweg

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
<?php
  // Count down to 2012 Olympic games in London (27 July-12 Aug 2012); Opening ceremony
  echo '<pre>' . print_r(countdown('2012-07-27 20:00:00'), 1) . '</pre>';
  // Total time the Berlin Wall stood straight (15 June 1961 - 19 August 1989 )
  echo '<pre>' . print_r(countdown('1989-08-19 12:00:00', '1961-06-15 12:00:00'), 1) . '</pre>';

/**
*  The function returns the difference between two datetimes.
*  Default it is returned as an object (the indexes are quite clear)
*  @param $to: datetime string .  Best practice in format "YYYY-mm-dd HH:ii:ss", although other formats might work
*  @param $from: datetime string.  Default: current date and time ('now')
**/

function countdown($to, $from='now') {
  $m_from = date_create($from);
  $m_to   = date_create($to);
  $interval = $m_from->diff($m_to);
  return $interval;
}

?>

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. countdown.php

Labels

Navigatie

 
 

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.