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] Ajouter 12 6 3 1 mois à une date donnée


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Par défaut [Dates] Ajouter 12 6 3 1 mois à une date donnée
    Bonjour,
    j'aurai voulu savoir comment ajouter des mois à une date donnée.
    Je pensais faire un explode de la date mais si nous sommes le 30/04/2007 et que j'ajoute 12 mois ça me ferait un 30/16/2007.

    Existe t-il des fonctions php pour gérer ça ? en fait je recupere une date dans une BDD donc sous le format US yyyy-mm-dd et je dois faire des tests sur cette date.

    Merci d'avance

  2. #2
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Tu as plusieurs exemples dans ce post Ajouter des jours a une date

    Il faudra les adapter pour ne pas utiliser la date courante mais ta date donc en la découpant avec des substring ou autres.

  3. #3
    Membre confirmé
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Par défaut
    et on peut le faire à partir d'une date donnée ? je vois que là il appelle la fonction date("jj/mm/aaa") et moi c'est le format us

  4. #4
    Membre confirmé
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Par défaut
    je n'avais pas lu ta phrase en dessous mais c'est bizar qu'il n'existe rien pour le format ricain ? il repasser par le fr ? j'ai des fonctions qui me permettent de retourner ma date ricain en date fr donc ouep je pense faire avec ça

  5. #5
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Si c'est le format us tu peux faire ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $jour = date("d", strtotime($dateUS));
    $mois = date("m", strtotime($dateUS));
    // etc...
     
    $vnewDate = date("m/d/Y", mktime(0,0,0,$mois+$offset, $jour, $année));
    strtotime reconnait directement le format US normalement (a tester).

    et sinon tu peux tjs découper la date avec un substring pour récupérer les bonnes valeurs.

    EDIT : je comprends pas ton histoire de format ricain et du fait que ca soit bizarre. Tu appelles la fonction date avec les paramètres voulus, si tu veux une date américaine tu fais date("m/d/Y") tout simplement

  6. #6
    Membre confirmé
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Par défaut
    et celle là paraît idéal pour mon cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $date = date("Y-m-d", mktime(0,0,0,date("m"), date("d") +5, date("Y"));
    mais je l'adapte pour le mois

    ptite question ils servent à quoi les 0,0,0 ?

  7. #7
    Membre confirmé
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Par défaut
    j'ai pigé pour les 0,0,0 !

    Par contre si je fais

    $date = date("2007-04-24", mktime(0,0,0,date("m") +2, date("d"), date("Y")));

    rien ne bouge ma date reste idem

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

Discussions similaires

  1. Ajout de jours ou de mois à une date
    Par stelincat dans le forum Général Python
    Réponses: 3
    Dernier message: 13/12/2010, 15h28
  2. ajouter 8 mois à une date
    Par Myfred dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 07/03/2007, 11h35
  3. Requête Access 2003 : Ajouter 6 mois à une date
    Par billy123 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 28/02/2007, 16h26
  4. [Dates] Ajouter un mois à une date
    Par Higestromm dans le forum Langage
    Réponses: 8
    Dernier message: 17/01/2006, 15h27
  5. ajouter 1 mois à une date dans une requete
    Par alain.lc dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 04/04/2005, 12h05

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