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 1 an à une date en php


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Responsable Applicatif / Développeur
    Inscrit en
    Mai 2007
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Responsable Applicatif / Développeur

    Informations forums :
    Inscription : Mai 2007
    Messages : 495
    Points : 110
    Points
    110
    Par défaut [Dates] Ajouter 1 an à une date en php
    Comment faire pour ajoujter un an à une date (la date courante) en php.
    J'arrive à ajouter des jours mais pas des années.
    J'ai testé un truc du genre :

    $date_current = date("Y-m-d");
    $duree1an = (date("1-m-d);
    $date=date("Y-m-d", strtotime($date_current." + $duree1an"));

    Comment faire?

  2. #2
    Futur Membre du Club
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4
    Points : 7
    Points
    7
    Par défaut
    $date=date("Y-m-d", strtotime("+1 year"));

    cela ajoute un an à la date actuelle
    donc plus besoin de tes deux premières lignes

  3. #3
    Membre régulier Avatar de Grepsd
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2008
    Messages : 96
    Points : 119
    Points
    119
    Par défaut
    Bonjour,

    http://fr.php.net/manual/en/function.date.php

    Voici donc le code permettant d'obtenir le timestamp de la même date qu'aujourd'hui, mais un an plus tard.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nextyear  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1);
    Ensuite tu n'as plus qu'à formater la date avec la fonction date() à ta guise afin d'obtenir la sortie souhaitée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $formatedDate = date('format', $nextyear);

  4. #4
    Membre régulier
    Homme Profil pro
    Responsable Applicatif / Développeur
    Inscrit en
    Mai 2007
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Responsable Applicatif / Développeur

    Informations forums :
    Inscription : Mai 2007
    Messages : 495
    Points : 110
    Points
    110
    Par défaut
    Merci beaucoup pour vos 2 réponse.
    ça marche.

    Au passage merci pour l'aide et surtout aussi pour les cours et tutoriels pour se former sur PHP !

  5. #5
    Membre régulier
    Homme Profil pro
    Responsable Applicatif / Développeur
    Inscrit en
    Mai 2007
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Responsable Applicatif / Développeur

    Informations forums :
    Inscription : Mai 2007
    Messages : 495
    Points : 110
    Points
    110
    Par défaut
    ça marche mais maintenant je voudrais essayer autre chose: ajouter 13 mois - 1 jour.
    et le - un jour ne passe pas.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $date1=date("Y-m-d", strtotime("+13 month"));
    $date = date($date1, strotime("-1 day"));


    Fatal error: Call to undefined function strotime() in /var/www/kidnet/cron/passage_gratuit.php on line 47
    (la ligne 47 correpond à la 2eme ligne)

  6. #6
    Membre régulier Avatar de Grepsd
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2008
    Messages : 96
    Points : 119
    Points
    119
    Par défaut
    Tu as oublié une lettre dans ton appel de fonction...
    strTotime()

    Essais de lire les erreurs tu perdras moins de temps que si tu dois passer par le forum à chaque fois.

  7. #7
    Membre régulier
    Homme Profil pro
    Responsable Applicatif / Développeur
    Inscrit en
    Mai 2007
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Responsable Applicatif / Développeur

    Informations forums :
    Inscription : Mai 2007
    Messages : 495
    Points : 110
    Points
    110
    Par défaut
    Merci
    oui je lis les messages mais là meme en le relisant plusieurs fois je n'avais pas vu.
    je pensais avoir fait un copié collé de la fonction.
    en tout cas merci.

    Par contre même en corrigeant cela compile mais cela me donne comme date 2008-12-13 et non 2008-12-12.

    Le -1 day n'est pas pris en compte.

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu ne peux pas passer une date en paramètre de la fonction date().

    Essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $date = date('Y-m-d', mktime(0, 0, 0, date("m")+13  , date("d")-1, date("Y")));
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

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

Discussions similaires

  1. [Dates] Ajouter 15 jours à une date
    Par Invité dans le forum Langage
    Réponses: 5
    Dernier message: 28/02/2008, 10h50
  2. [Dates] ajouter un mois à une date
    Par ideal23 dans le forum Langage
    Réponses: 4
    Dernier message: 29/10/2007, 17h16
  3. [Dates] Ajouter des mois à une date
    Par tiger63 dans le forum Langage
    Réponses: 8
    Dernier message: 25/05/2007, 16h42
  4. [Dates] Fonction date: ajouter 3 jours à une date
    Par bobic dans le forum Langage
    Réponses: 8
    Dernier message: 12/03/2007, 11h05
  5. [Dates] Ajouter un mois à une date
    Par Higestromm dans le forum Langage
    Réponses: 8
    Dernier message: 17/01/2006, 15h27

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