IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Dates] Récupérer le numéro d'un jour, d'un mois et d'une année


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 52
    Points
    52
    Par défaut [Dates] Récupérer le numéro d'un jour, d'un mois et d'une année
    Bonjour,

    Je voudrais afficher automatiquement l'âge d'une personne d'apres la date de naissance inscrite dans la bdd.

    J'ai un script qui fonctionne très bien deslors qu'on rentre manuellement le numéro du jour dans un mois, idem pour le numéro du mois dans l'année et ensuite l'année
    Ex : dans ma base la date suivante : 1988-03-13.

    Pour alimenter les trois variables du script, il me faut juste le 03 pour la variable jour. 13 pour celle du mois et 1988 pour l'année. Au final, cette personne a 19 ans.

    Quel est la syntaxe pour prélever juste le numéro voulu ?

    Merci

    Philippe

  2. #2
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 177
    Points : 115
    Points
    115
    Par défaut
    En gros tu veux découper la date stockée dans la base de données? Essaye de faire un :

    Requete SQL pour récupéré $la_Date_A_Modifier
    [...]
    $la_Date = explode("-", $la_Date_A_Modifer);


    avec

    $la_Date[0] --> Année
    $la_Date[1] --> Mois
    $la_Date[2] --> Jour

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Ce ne sont pas les méthodes qui manquent, par ordre de préférence :
    • Utiliser les fonctions offertes par votre SGBD (MySQL offre, par exemple, des fonctions pour extraire chaque partie d'une date comme YEAR, MONTH, ...)
    • Utiliser une expression régulière (fonction preg_match)
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      function extaire_jma($date) {
          if (preg_match('^(\d{4})([-])(\d{2})\2(\d{2})$D', $date, $m) && checkdate($m[3], $m[4], $m[1])) {
              return array('annee' => $m[1], 'mois' => $m[3], 'jour' => $m[4]);
          }
          return FALSE;
      }
       
      $parties = extraire_jma($date);
      if ($parties) {
          printf('%d/%d/%d', $parties['jour'], $parties['mois'], $parties['annee']);
      } else {
          die('Error !');
      }
    • Découper la chaîne (fonctions explode, split, preg_split)
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      list($annee, $mois, $jour) = explode('-', $date);
    • Utiliser la fonction sscanf
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      list($annee, $mois, $jour) = sscanf('%4d-%2d-%2d', $date);


    Voir faire le calcul d'age directement avec le SGBD. Exemple avec MySQL (versions >= 5.0.0) :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT TIMESTAMPDIFF(YEAR, date_naissance, NOW());

    (non testés)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 18/05/2012, 17h40
  2. Ajout d'un mois ou d'une année à une date
    Par vaderetro33 dans le forum VB.NET
    Réponses: 4
    Dernier message: 03/05/2010, 20h05
  3. [XL-2003] Récupérer le numéro de ligne ou est situé la valeur d'une combobox
    Par mentat dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 29/08/2009, 12h04
  4. Réponses: 1
    Dernier message: 16/11/2007, 22h28
  5. [Dates] Récupérer le numéro du DD
    Par Huntress dans le forum Langage
    Réponses: 11
    Dernier message: 09/01/2006, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo