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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Conversion chaine et tableau


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Points : 15
    Points
    15
    Par défaut Conversion chaine et tableau
    Bonjour amis dev,

    j ai un pretit probleme peut etre pouvez vous m aider :

    j ai une chaine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [alarm/high.[A-D|ALL]|alarm/low.[A-D|ALL]|set_alarm/high.[A-D|ALL]|set_alarm/low.[A-D|ALL]|set_alarm/unset|set_alarm/volthigh.[A-D|ALL]|set_alarm/volt2high.[A-D|ALL]|set_alarm/voltlow.[A-D|ALL]|set_alarm/volt2low.[A-D|ALL]]

    Et j aimerais quelle ressemble ensuite a ça
    Pouvez vous m aider svp

    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
    [0] => Array
            (
                ["alarm/high."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
               ["alarm/low."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
               ["set_alarm/high."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
               ["set_alarm/low."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
               ["set_alarm/unset"]
     
    	["set_alarm/volthigh."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
    	["set_alarm/volt2high."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
    	["set_alarm/voltlow."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
    	["set_alarm/volt2low."] => array(
    		[0] = "A-D",
    		[1] = "ALL"
    		)
    )
    cordialement

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    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
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $str = '[alarm/high.[A-D|ALL]|alarm/low.[A-D|ALL]|set_alarm/high.[A-D|ALL]|set_alarm/low.[A-D|ALL]|set_alarm/unset|set_alarm/volthigh.[A-D|ALL]|set_alarm/volt2high.[A-D|ALL]|set_alarm/voltlow.[A-D|ALL]|set_alarm/volt2low.[A-D|ALL]]';
     
    $data = [];
    foreach (explode(']|', $str) as $v)
    {
        $kv = explode('.', str_replace(['[', ']', ''], '', $v));
        $data[0][$kv[0].'.'] = explode('|', $kv[1]);
    }

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Points : 15
    Points
    15
    Par défaut
    merci cpour ton retour mais

    Parse error: syntax error, unexpected '[', expecting ')' in C:\wa*****on line 52
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	    $kv = explode('.', str_replace(['[', ']', ''], '', $v));

  4. #4
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    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
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    c'est la notation courte des tableaux qui n'est pas supportée par ta version de php.

    et avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $str = '[alarm/high.[A-D|ALL]|alarm/low.[A-D|ALL]|set_alarm/high.[A-D|ALL]|set_alarm/low.[A-D|ALL]|set_alarm/unset|set_alarm/volthigh.[A-D|ALL]|set_alarm/volt2high.[A-D|ALL]|set_alarm/voltlow.[A-D|ALL]|set_alarm/volt2low.[A-D|ALL]]';
     
    $data = array();
    foreach (explode(']|', $str) as $v)
    {
        $kv = explode('.', str_replace(array('[', ']', ''), '', $v));
        $data[0][$kv[0].'.'] = explode('|', $kv[1]);
    }

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Points : 15
    Points
    15
    Par défaut
    merci

    mais il y a un pretit probleme sur 1 ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       [set_alarm/unset|set_alarm/volthigh.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
    doit etre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    [set_alarm/unset]
     
    [set_alarm/volthigh.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
    resultat
    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
     
    Array
    (
        [0] => Array
            (
                [alarm/high.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [alarm/low.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/high.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/low.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/unset|set_alarm/volthigh.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/volt2high.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/voltlow.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
                [set_alarm/volt2low.] => Array
                    (
                        [0] => A-D
                        [1] => ALL
                    )
     
            )
     
    )

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Points : 15
    Points
    15
    Par défaut
    ok merci j ai réussi a m en sortir avec ce que tu ma donné

  7. #7
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    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
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Super

    Poste la solution et n'oublie pas le bouton

Discussions similaires

  1. Réponses: 10
    Dernier message: 18/02/2008, 10h07
  2. [PL / SQL] Convertir chaine en tableau de char
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 3
    Dernier message: 06/02/2006, 10h29
  3. Conversion d'un tableau de float en double ?
    Par alex6891 dans le forum C++
    Réponses: 5
    Dernier message: 05/01/2006, 06h04
  4. Réponses: 1
    Dernier message: 30/09/2005, 19h17
  5. [POO] conversion chaine de caractere en objet
    Par seb_fou dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/02/2005, 09h41

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