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 :

Ma function Date php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier
    Secteur : Transports

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Points : 14
    Points
    14
    Par défaut Ma function Date php
    Bonjour j'ai une fonction dans mon code qui fonctionne parfaitement mais seulement a un endroit elle me creer un affichage erroner de ma date la plupart de mes affichage sont comme suit 13 fevrier 2015 ou bien 3 mars 2014 etc etc mais a un endroit en particulier pour le mois de Janvier 2015 il maffiche 13 Janvier 2Janvier5 donc autremendit au lieu d'afficher 2015 il affiche le mois a la place du 01 pour lannée je ne comprend pas pourquoi car les autres sont tous correcte et j'ai seulement une entrer dans ma bd qui es du mois de janvier alors ??? pourriez vous me trouver une solution svp voici ma fonction.
    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
     static function time_to_string($date){
     
     
     
          $month = Array(
                '01'=>'Janvier',
                '02'=>'Février',
                '03'=>'Mars',
                '04'=>'Avril',
                '05'=>'Mai',
                '06'=>'Juin',
                '07'=>'Juillet',
                '08'=>'Août',
                '09'=>'Septembre',
                '10'=>'Octobre',
                '11'=>'Novembre',
                '12'=>'Décembre'
            );
     
         $_date = date('d-m-Y', strtotime($date));
     
         $x = explode('-', $date);
     
     
         if( strpos($x[2],':' ) ) {
     
             $y = explode(' ', $x[2]);
     
             $x[1] = str_replace($x[1], $month[$x[1]], $x[1]);
     
             $new_date = $y[0] . ' ' . $x[1] . ' ' . $x[0] . ' à ' . $y[1];
     
         }else{
     
            $x = str_replace($x[1], $month[$x[1]], $x);
     
            $new_date = $x[2]. ' ' . $x[1] . ' ' . $x[0];
     
         }
     
         return $new_date;
    et voici ma page pour afficher mes resultats:
    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
     
    echo'
                        <div class="container-medias '.util::alt_bg($i).'">
     
                        <div class="right-article">
     
                            <h2 class="article-titre">'.stripslashes($v['article_titre']).'</h2>
                            <span class="date-article"><img src="/images/icons/calendar.gif" alt="'.stripslashes($v['article_date']).'" title="'.stripslashes($v['article_date']).'" /> <span>Écrit le: '.util::time_to_string(stripslashes($v['article_date'])).'</span></span>
                            <div class="article-texte reset-for-tinymce">
     
                                '.stripslashes($v['article_texte']).'
     
                            </div>
     
                        </div>
     
                        </div>
                        ';

  2. #2
    Expert confirmé
    Avatar de TiranusKBX
    Homme Profil pro
    Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Inscrit en
    Avril 2013
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 476
    Points : 4 806
    Points
    4 806
    Billets dans le blog
    6
    Par défaut
    en premier lieu j'ai une remarque
    pourquoi s'ennuyer à reconvertir en nombre puis à nouveau en haine ta date stockée en chaîne date type BDD ?

    ensuite pourquoi
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $y = explode(' ', $x[2]);
    ton année n'est composée que de chiffre cette séparation vas donc systématiquement te donner ce qui suit
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $y = array('2015','');
    c'est la que doit se trouver ton principal problème

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Dans ta fonction tu ressembles tous les numéros de mois par le nom du mois donc "01" dans "2015" devient "2Janvier5"


    Beaucoup plus simplement :
    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
    function time_to_string($date){
     
          $month = Array(
                '01'=>'Janvier',
                '02'=>'Février',
                '03'=>'Mars',
                '04'=>'Avril',
                '05'=>'Mai',
                '06'=>'Juin',
                '07'=>'Juillet',
                '08'=>'Août',
                '09'=>'Septembre',
                '10'=>'Octobre',
                '11'=>'Novembre',
                '12'=>'Décembre'
            );
     
         $objDate = date_create($date);
         $formated_date = $objDate->format('d') . ' ' . $month[$objDate->format('m')] . ' ' .  $objDate->format('Y');
         $heure = $objDate->format('H:i:s');
         if ($heure != '00:00:00') {
             $formated_date .= ' à ' . $heure;
         }
          return $formated_date;
    }

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par TiranusKBX Voir le message
    ...pourquoi s'ennuyer à reconvertir en nombre puis à nouveau en haine ta date stockée en chaîne date type BDD ?...
    Où y'a d'la haine, y'a pas d'plaisir !

    Citation Envoyé par sabotage Voir le message
    Dans ta fonction tu ressembles tous les numéros de mois ...
    Tout ce qui se ressemble s'assemble ...et se rassemble ?
    Enfin... ce me semble...

  5. #5
    Expert confirmé
    Avatar de TiranusKBX
    Homme Profil pro
    Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Inscrit en
    Avril 2013
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 476
    Points : 4 806
    Points
    4 806
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Où y'a d'la haine, y'a pas d'plaisir !
    il faut croire que l'appuis de la touche C ne soit pas passé

  6. #6
    Invité
    Invité(e)
    Par défaut
    Il peut y avoir une chaine sans C,
    mais pas de haine censée...

  7. #7
    Membre à l'essai
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier
    Secteur : Transports

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par TiranusKBX Voir le message
    en premier lieu j'ai une remarque
    pourquoi s'ennuyer à reconvertir en nombre puis à nouveau en haine ta date stockée en chaîne date type BDD ?

    ensuite pourquoi
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $y = explode(' ', $x[2]);
    ton année n'est composée que de chiffre cette séparation vas donc systématiquement te donner ce qui suit
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $y = array('2015','');
    c'est la que doit se trouver ton principal problème
    Re bonjour les amis encore merci pour vos réponses

    Alors Si j'ai bien compris TiranusKBX j'enleve le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $y = explode(' ', $x[2]);

  8. #8
    Membre à l'essai
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier
    Secteur : Transports

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Points : 14
    Points
    14
    Par défaut J'vais marquer résolu sa fonctionne
    Sabotage merci de m'avoir aider car ta fonction fonctionne super bien Merci à vous tous de vottre impliquation

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

Discussions similaires

  1. [Dates] probleme date php
    Par flydragon dans le forum Langage
    Réponses: 11
    Dernier message: 04/05/2006, 18h56
  2. [Dates] [php]Test de dates
    Par samjung dans le forum Langage
    Réponses: 4
    Dernier message: 26/04/2006, 18h00
  3. [Dates] [PHP/HTML/WEB] - Afficher le nom du jour dans la date
    Par fredhali2000 dans le forum Langage
    Réponses: 14
    Dernier message: 26/01/2006, 12h13
  4. VB/EXCEL/DATES/PHP
    Par JBLCN dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/08/2005, 09h32

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