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 :

Probleme de Tableau


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 62
    Par défaut Probleme de Tableau
    Salut tout le monde j'ai un vieux soucis :

    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
    Array
    (
        [0] => Array
            (
                [day] => 1100000
                [hour_begin] => 12:00
                [hour_end] => 12:30
                [exclude_hour_begin] => 10:00
                [exclude_hour_end] => 22:00
            )
     
        [1] => Array
            (
                [day] => 1100000
                [hour_begin] => 12:00
                [hour_end] => 12:30
                [exclude_hour_begin] => 09:01
                [exclude_hour_end] => 10:00
            )
     
        [2] => Array
            (
                [day] => 1111000
                [hour_begin] => 09:00
                [hour_end] => 10:30
                [exclude_hour_begin] => 10:00
                [exclude_hour_end] => 22:00
            )
     
        [3] => Array
            (
                [day] => 1111000
                [hour_begin] => 09:00
                [hour_end] => 10:30
                [exclude_hour_begin] => 09:01
                [exclude_hour_end] => 10:00
            )
     
    )


    Il faut que je centralise tout les meme days ensemble et rajouter un indice à chaque champs pour avoir un resultat de cette manière :


    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
    Array(
     
    [0] => Array
            (
                [day] => 1100000
                [hour_begin] => 12:00
                [hour_end] => 12:30
                [exclude_hour_begin] => 10:00
                [exclude_hour_end] => 22:00
                [hour_begin1] => 12:00
                [hour_end1] => 12:30
                [exclude_hour_begin1] => 09:01
                [exclude_hour_end1] => 10:00
            )
    [1] => Array
            (
                [day] => 1111000
                [hour_begin] => 09:00
                [hour_end] => 10:30
                [exclude_hour_begin] => 10:00
                [exclude_hour_end] => 22:00
                [hour_begin2] => 09:00
                [hour_end2] => 10:30
                [exclude_hour_begin2] => 09:01
                [exclude_hour_end2] => 10:00
            )
     
    )
    Y'aurais un tueur en php pour me dépanner ?

    Merci

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Bonjour,

    Centraliser d'accord mais rajouter un indice à la clé, c'est bancal.
    Il est préférable de se servir d'un tableau de tableau.
    Comme ça :
    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
    <?php
     
    $data = array(
       0 => array(
          'day' => 1100000,
          'hour_begin' => '12:00',
          'hour_end' => '12:30',
          'exclude_hour_begin' => '10:00',
          'exclude_hour_end' => '22:00'
       ),
       1 => array(
          'day' => 1100000,
          'hour_begin' => '12:00',
          'hour_end' => '12:30',
          'exclude_hour_begin' => '09:01',
          'exclude_hour_end' => '10:00'
       ),
       2 => array(
          'day' => 1111000,
          'hour_begin' => '09:00',
          'hour_end' => '10:30',
          'exclude_hour_begin' => '10:00',
          'exclude_hour_end' => '22:00'
       ),
       3 => array(
          'day' => 1111000,
          'hour_begin' => '09:00',
          'hour_end' => '10:30',
          'exclude_hour_begin' => '09:01',
          'exclude_hour_end' => '10:00',
       )
    );
     
    $groups = array(); // array(day => array([] => params))
    foreach($data as $v) {
       $groups[$v['day']][] = $v;
    }
     
    ?>

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut
    ou indexé par date

    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
    $array =  Array( 
         0  => Array  (
                'day' => 1100000,
                'hour_begin' => '12:00',
                'hour_end' => '12:30',
                'exclude_hour_begin' => '10:00', 
                'exclude_hour_end' => '22:00' 
            ),
     
         1  => Array ( 
                 'day' => 1100000,
                'hour_begin' => '12:00',
                'hour_end' => '12:30',
                'exclude_hour_begin' => '09:01',
                'exclude_hour_end' => '10:00'
            )
        );
     
    foreach($array as $key){ 
    $sortie[$key['day']][] =  $key;	
    }
     
    print_r($sortie);
     
    /*
     
    Array
    (
        [1100000] => Array
            (
                [0] => Array
                    (
                        [day] => 1100000
                        [hour_begin] => 12:00
                        [hour_end] => 12:30
                        [exclude_hour_begin] => 10:00
                        [exclude_hour_end] => 22:00
                    )
     
                [1] => Array
                    (
                        [day] => 1100000
                        [hour_begin] => 12:00
                        [hour_end] => 12:30
                        [exclude_hour_begin] => 09:01
                        [exclude_hour_end] => 10:00
                    )
     
            )
     
    )
     
    */

Discussions similaires

  1. [CR8.5] Probleme de tableau
    Par Sto59 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/02/2007, 16h07
  2. Probleme de tableau paramétrable
    Par jamah dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/11/2005, 13h47
  3. jolie probleme de tableau
    Par racoon971 dans le forum C++
    Réponses: 2
    Dernier message: 04/03/2005, 12h31
  4. probleme de tableau dynamique
    Par El Krotal dans le forum C
    Réponses: 9
    Dernier message: 25/06/2004, 18h00
  5. [C#] Probleme de tableau
    Par djsbens dans le forum Windows Forms
    Réponses: 8
    Dernier message: 08/06/2004, 15h04

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