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 :

La fonction date_add()


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 38
    Par défaut La fonction date_add()
    Bonjour,

    J'essaie depuis quelques temps d'utiliser les DateTime. J'utilise entre autre la fonction date_add(). Mais il y a quelque chose que je comprends pas.
    Voici un code simplifié:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
    		$date = date_create('2011-12-24 23:59:59');
    		$tmp = $date;
    		$interval = date_interval_create_from_date_string('1 seconde');
    		echo 'Avant ajout => date1 : '.date_format($date, 'Y-m-d H:i:s').' tmp : '.date_format($tmp, 'Y-m-d H:i:s').'<br/>';
    		date_add($date,$interval);
    		echo 'Après ajout => date : '.date_format($date, 'Y-m-d H:i:s').' tmp : '.date_format($tmp, 'Y-m-d H:i:s').'<br/>';
    ?>
    et voici le résultat:
    Avant ajout => date : 2011-12-24 23:59:59 tmp : 2011-12-24 23:59:59
    Après ajout => date : 2011-12-25 00:00:00 tmp : 2011-12-25 00:00:00
    Je ne comprends pas pourquoi quand j'ajoute une seconde à la variable date, ça ajoute aussi une seconde à la variable tmp.

    Merci d'avance pour vôtre aide !!

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Dans ton cas, ta variable $tmp n'est qu'une référence à ton objet $date. Pour copier un objet, il faut utiliser le clonage :
    http://www.php.net/manual/fr/language.oop5.cloning.php

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 38
    Par défaut
    Merci d'avoir répondu aussi vite, et merci aussi pour ta réponse.
    J'avais aucune idée qu'il fallait parfois utiliser un clonage.

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

Discussions similaires

  1. Fonction DATE_ADD MySql
    Par ozlem dans le forum MySQL
    Réponses: 2
    Dernier message: 25/03/2010, 13h40
  2. la fonction date_add
    Par deborah95 dans le forum MySQL
    Réponses: 3
    Dernier message: 16/03/2009, 17h05
  3. [MySQL] problème avec la fonction DATE_ADD()
    Par othmane126 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 31/05/2007, 07h41
  4. fonction printf
    Par ydeleage dans le forum C
    Réponses: 7
    Dernier message: 30/05/2002, 11h24
  5. FOnction api specifiant la position de la souris
    Par florent dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/05/2002, 20h07

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