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 :

Heure locale


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 279
    Par défaut Heure locale
    Bonjour,

    Je fais un projet en php zend mvc et je dois afficher l'heure suivant la ville que l'utilisateur choisit.
    Si il fait des recherches pour New york alor sje dois afficher l'heure locale a new york... pareil pour los angeles ....

    Avez vous une idee du comment faire?
    En fait je dois afficher la meteo du jour et de demain ainsi que lheure locale suivant la ville. J'utilise lapi google weather non officielle qui inclut l'heure locale mais lheure est fausse... grrr

    Merci de votre aide
    Sandrine

  2. #2
    Membre éclairé Avatar de mdr_cedrick
    Profil pro
    Développeur multimédia
    Inscrit en
    Janvier 2008
    Messages
    374
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Janvier 2008
    Messages : 374
    Par défaut
    ce qu'il faudrait c'est un tableau php avec les villes et le décalage horaire (en + ou en -) et lors du choix de la ville tu va récupérer cette donnée et rajouter + ou - d'heure à l'heure de Paris.
    tu a également le paramètre "e" de la fonction date pour jouer avec les fuseaux horaires mais je ne l'ai jamais utilisé, à essayer ...

  3. #3
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 279
    Par défaut
    yes j'y ai pense mais c'est impossible pour mon projet. grrr
    Jai trouve cependant cette api :
    http://www.gchart.com/getinf.php?px=48&py=2
    avec la latitude et la longitude...
    et ca je lai avec geoip donc je vais tenter comme ca
    merci

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    Si tu as php >= 5.1, tu peux faire un truc dans ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <?php
      function getTimeZone()
      {
        $timeZone = DateTimeZone::listIdentifiers();
        $option = '';
        foreach($timeZone as $nom)
        {
          $option .= '<option value="' . $nom . '">' . $nom . '</option>' . "\n";
        }
        return $option;
      }
     
      function heureLocale()
      {
        $tmp = new DateTime();
        $dateLocale = $tmp -> format('d/m/Y');
        $heureLocale = $tmp -> format('H:i:s');
        return 'Nous sommes le ' . $dateLocale . ' et il est ' . $heureLocale . ' heure locale';
      }
     
      function heureDistante()
      {
        if(! isset($_POST['fuseau']))
        {
          return 'non défini';
        }
     
        $tmp = new DateTime();
        $offset = $tmp -> format('Z') * -1;
        $tmp -> modify($offset . ' second');
     
        $dateTimeZone = new DateTimeZone($_POST['fuseau']);
        $offset = $dateTimeZone -> getOffset($tmp);
        $tmp -> modify($offset . ' second');
        $dateDistante = $tmp -> format('d/m/Y');
        $heureDistante = $tmp -> format('H:i:s');
        return 'A ' . $_POST['fuseau'] . ', c\'est le ' . $dateDistante . ' et il est ' . $heureDistante;
      }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-15">
            <title></title>
        </head>
        <body>
          <form method="post" name="test" action="">
            <select name="fuseau">
              <option value="">Sélectionnez un pays</option>
              <?php echo getTimeZone(); ?>
            </select>
            <br>
            <input type="submit" name="btn">
          </form>
          <br>
          <?php echo heureLocale(); ?>
          <br>
          <?php echo heureDistante() ?>
        </body>
    </html>
    C'est du vite fait, donc à vérifier.

  5. #5
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 279
    Par défaut
    merci beaucoup pour ta reponse.
    en fait je ne possede pas du tout le fuseaux...
    jai juste le nom des villes
    tu sais c'est une appli genre les pages jaunes, tu fais ta recherche et moi je taffiche la meteo et lheure locale de la ville que tu as demander...

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    As-tu au moins essayé ce que j'ai envoyé ?

  7. #7
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 279
    Par défaut
    yes yes dsl mais en fait je ne dois pas proposer au client de choisir lui meme son fuseaux horaire, a la rigueur si jai deux villes avec le meme nom alors je lui demande de choisir laquelle... mais pas plus
    merci

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

Discussions similaires

  1. Calcul heure UCT par rapport à heure locale
    Par bobic dans le forum Oracle
    Réponses: 1
    Dernier message: 11/05/2006, 22h45
  2. Regler heure locale du serveur
    Par sirbaldur dans le forum Langage
    Réponses: 1
    Dernier message: 06/02/2006, 16h36
  3. Afficher des heures locales
    Par mrpowerboy dans le forum Applets
    Réponses: 3
    Dernier message: 27/09/2005, 17h57
  4. Conversion d'heures de GMT en Heure locale
    Par speedy1496 dans le forum Oracle
    Réponses: 7
    Dernier message: 25/07/2005, 16h59
  5. heure locale et GMT
    Par Dauphin dans le forum C++Builder
    Réponses: 3
    Dernier message: 10/06/2005, 06h51

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