Designed by Derf !
112 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter






   

Date & Time (1/2)

Quelques fonctions en rapport avec le temps





Didier
La gestion des dates et des heures est souvent un problème épineux... Cette fiche a pour but de centraliser les principales fonctions, en ASP ou PHP, sur ce sujet ainsi que quelques exemples utiles ou demandés par les visiteurs du site... et en JavaScript, c'est ici !

Page 1  2  SUITE >> 
Comment faire ?


Quelques fonctions de base
Description
Doc officielle

Doc officielle
Date courante
<%=date%>
<? $timestamp=time(); ?>
Nombre de secondes écoulées depuis le 01/01/1970 00:00:00 GMT
<? echo date($chaine [,$timestamp]); ?>
$chaine est formée des éléments suivants :
  • a - "am" ou "pm"
  • A - "AM" ou "PM"
  • d - Jour du mois, sur deux chiffres (éventuellement avec un zéros) : "01" à "31"
  • D - Jour de la semaine, en trois lettres (et en anglais) : par exemple "Fri" (pour Vendredi)
  • F - Mois, textuel, version longue; en anglais, i.e. "January" (pour Janvier)
  • h - Heure, au format 12h, "01" à "12"
  • H - heure, au format 24h,. "00" à "23"
  • g - Heure, au format 12h sans les zéros initiaux, "1" à "12"
  • G - Heure, au format 24h sans les zéros initiaux,. "0" à "23"
  • i - Minutes; "00" à "59"
  • j - Jour du mois sans les zéros initiaux: "1" à "31"
  • l - Jour de la semaine, textuel, version longue; en anglais, i.e. "Friday" (pour Vendredi)
  • L - Booléen pour savoir si l'année est bissextile ("1") ou pas ("0")
  • m - Mois; i.e. "01" à "12"
  • n - Mois sans les zéros initiaux; i.e. "1" à "12"
  • M - Mois, en trois lettres (et en anglais) : par exemple "Jan" (pour Janvier)
  • s - Secondes; i.e. "00" à "59"
  • S - Suffixe ordinal d'un nombre, en anglais, sur deux lettres : i.e. "th", "nd"
  • t - Nombre de jour dans le mois donné, i.e. "28" à "31"
  • U - Secondes depuis une époque
  • w - Jour de la semaine, numérique, i.e. "0" (Dimanche) to "6" (Samedi)
  • Y - Année, 4 chiffres; i.e. "1999"
  • y - Année, 2 chiffres; i.e. "99"
  • z - Jour de l'année; i.e. "0" à "365"
  • Z - Décalage horaire en secondes (i.e. "-43200" à "43200")


  • si $timestamp n'est pas précisé, la valeur courante est utilisée

    <? $array=getdate($timestamp);  ?>
    Retourne un tableau associatif contenant les informations de date et heures du timestamp, avec les champs suivants :
  • "seconds" - secondes
  • "minutes" - minutes
  • "hours" - heures
  • "mday" - jour du mois
  • "wday" - jour de la semaine, numérique
  • "mon" - mois, numérique
  • "year" - année, numérique
  • "yday" - jour de l'année, numérique; i.e. "299"
  • "weekday" - jour de la semaine, texte complet (en anglais); i.e. "Friday"
  • "month" - mois, texte complet (en anglais); i.e. "January"
  • Date et heure
    courante
    <%=now%>
    Heure courante
    <%=time%>
    Jour
    <%=day(date1)%>
    Mois
    <%=month(date1)%>
    Année
    <%=year(date1)%>
    Heure
    <%=hour(date1)%>
    Minutes
    <%=minute(date1)%>
    Secondes
    <%=second(date1)%>
    Jour de la semaine
    <%=Weekday(date1[,DoW])%>
    DoW est un entier précisant le premier jour de la semaine à prendre en compte
    (1:Dimanche à 7:Samedi)
    Eléments
    d'une date
    <%=DatePart(periode,date1[,DoW[,WoY]]) %>
    Periode peut prendre les valeurs :
  • yyyy : année
  • q : trimestre
  • m : mois
  • y : jour de l'année
  • d : jour
  • w : jour de la semaine
  • ww : semaine
  • h : heure
  • n : minute
  • s : seconde

    WoY est un entier spécifiant la première semaine de l'année.
  • 1 : la semaine incluant le 1er janvier (defaut)
  • 2 : la semaine comportant au moins quatre jours dans la nouvelle année
  • 3 : la première semaine complète de la nouvelle année.
  • Définir une date
    <%=dateSerial(year,month,day)%>
    Les paramètres peuvent prendre n'importe quelle valeur entre -32.768 et 32.767 et incrémentent ou décrémentent les autres à condition que l'ensemble reste valide (100-9999/1-12/1-31)
    Si Year est entre 0 et 99, il correspond alors aux années 1900-1999
    <? $timestamp=mktime(h,n,s,m,d,y); ?>
    Si les valeurs sortent des plages, les autres sont incrémentées ou décrémentées

    $timestamp est un entier long contenant le nombre de secondes depuis le début de l'époque UNIX (01/01/1970 à 00:00:00)
    Définir une heure
    <%=timeSerial(hour,minute,second)%>
    Les paramètres peuvent prendre n'importe quelle valeur entre -32.768 et 32.767 et incrémentent ou décrémentent les autres à condition que l'ensemble reste valide (0-23/0-59/0-59)
    Calculer l'écart entre 2 dates
    <%=dateDiff(periode,date1,date2)%>
    En PHP, c'est le cirque pour les dates antérieures au 01/01/1970, alors ci-dessous une petite fonction pour calculer la différence (en jours) entre 2 dates... Si vous avez mieux pour faire la même chose, je suis preneur... NB: les fonctions DaysInMonth() et DaysInYear() sont sur la page 2 !
    <? function daydiff($d1,$m1,$y1,$d2,$m2,$y2) {
       $y = $y1; $m = $m1;
       $j = DaysInMonth($m1,$y1) - $d1;
       $m++; if($m==13) { $m=1; $y++; }
       while($m!=$m2) {
          if($m<$m2) {$j+=DaysInMonth($m,$y); $m++;}
          else {$j-=DaysInMonth($m-1,$y); $m--;}
       }
       while($y!=$y2) {
          if($y<$y2) {
             if($m<3) $j+=DaysInYear($y);
             else $j+=DaysInYear($y+1);
             $y++;
          } else {
             if($m<3) $j-=DaysInYear($y-1);
             else $j-=DaysInYear($y);
             $y--;
          }
       }
       return $j+$d2;
    } ?>
    Modifier une date
    <%=dateAdd(periode,nombre,date1)%>
    Convertir une chaîne en date
    <% date1=dateValue(datestr) %>

    ou
    <% date1=cDate(datestr) %>
    Page 1  2  SUITE >> 

    Pour pouvoir écrire dans ce forum, identifiez-vous !

      v1.3p © ASP-PHP.net 2002  

    Didier le 10/09/2004 (432 234 hits)
    Didier Téléchargez gratuitement et légalement des logiciels Microsoft ! Si, si ;)
    • Visual Studio 2010
    • Office 2010
    • Expression Studio 3
    • SQL Server 2008
    • et d'autres...
    Au fil des news  
    Magazines - Le N°128 de Programmez est disponible
    Magazines - Le N°127 de Programmez est disponible
    Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 6
    Pour continuer dans le même style, je vous propose une suite au précédent article. Rechercher tous ...
    Adobe - Adobe Photoshop.com Mobile pour iPhone 1.1
    JavaScript - Ajouter une page dans vos favorites
    Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 5 -
    Je vous propose cette fois deux astuces. Comment exporter une feuille de style avec l'aide de ...
    SharePoint Personalization Site Links - Les liens personnalisés des MySite SharePoint
    Nous avons vu dans les articles précédents comment agrémenter les pages de recherche afin de ...
    Magazines - Le n°126 de Programmez est disponible
    Outils - Traducteur en ligne automatique pour site web
    Adobe - Adobe Photoshop.com Mobile pour Iphone
    Magazines - Le n°125 de Programmez est disponible
    Adobe - Adobe AIR 2 et Flash Player 10.1version bêta
    Les conférences autour des technologies Microsoft - Liste non exhaustive des grands évènements
    Nous allons essayer de regrouper un grand nombre des évènements autour des technologies Microsoft ...
    Magazines - Le n°124 de Programmez est disponible
    PHP - Forum PHP 2009
    Composants - eFace - XAML en Java
    WPF - Désactiver le bouton de réduction d'une fenêtre
    Magazines - Le n°123 de Programmez est disponible
    Magazines - Le n°122 de Programmez est disponible
    Auditer une ferme SharePoint - Assurer le bon fonctionnement de SharePoint
    Dans le cadre de la bonne gestion de son environnement SharePoint, il est utile de faire un ...
    SQL Server 2008 Report Builder 2.0 - Installation et utilisation de Report Builder 2.0
    Dans le cadre de la création de rapports pour SQL Server Reporting Services 2008, un outil est ...
    Magazines - Le HS N° 1 de Web Design est disponible
    Adobe - Adobe propose en Open Source les frameworks.....
    Outils - EntityBuilder
    CSharp - Sérialisation XML de vos objets
    Magazines - Le n°121 de Programmez est disponible
    Adobe - Adobe annonce MAX 2009 !
    Outils - WhoIs
    [MAJ] Dreamweaver MX + Php + MySql - Les formulaires - partie 3
    Mise à jour du code, par DB 77, affichage du code erreur, dans la page erreur.php, traduction des ...
    PHP - News avec photo - Système de gestion - affichage
    Gestion - Administration - Affichage d'une "News", "Actualité", "Info", ... avec : - mise en forme ...
    Outils - Crypt
    Dreamweaver Php Mysql - Région répétée imbriquée
    Je rebondis, sur un post du forum, pour vous montrer comment obtenir grâce à l'extension Simulated ...
    Magazines - Le n° 120 de Programmez est disponible
    Gérer les bases de contenu SharePoint - Gérer la croissance du volume des données
    Dans le cadre de la gestion quotidienne de ferme SharePoint, il existe une partie qu'il faut ...
    PHP - Le Coach PHP sur Visual Studio
    .NET - Ecrire une application .NET utilisant MySQL
    PHP - Utilisation de PHP dans le monde Microsoft
    Magazines - Le n° 119 de Programmez est disponible
    Adobe - Adobe annonce Photoshop Marketplace
    [MAJ] Tutoriel AJAX simple - En avant vers le WEB2.0
    Mis à jour le 20/04/2009
    Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
    Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
      Scripts : Scripting | ASP-PHP | ASP.net | Divers
      Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
    v3b © Didier 2003   
     

    Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
     Groupes Utilisateurs Microsoft ASP-magazine TechNet MVP DotNet Project