Découper une chaine de caractère

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par sff, 29 Septembre 2018.

  1. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    533
    J'aime reçus:
    0
    Bonjour,

    je souhaite découper cette chaine de caractère :

    [{"titre":"mon titre",
    "description":"description",
    "attributes":{"color":"red",
    "type":"1",
    "id":"19353745"}},

    [{"titre":"mon titre",
    "description":"description",
    "attributes":{"color":"blue",
    "type":"2",
    "id":"12256745"}},

    [{"titre":"mon titre",
    "description":"description",
    "attributes":{"color":"black",
    "type":"8",
    "id":"19354745"}}


    Mon but est de récupérer une variable titre, description, color, type et id avec la valeur qui est associé mais je bloque sur la solution. J'ai essayé un explode() mais sans succès et surtout à cause de attributes qui est intercalé dedans.

    Je remercie d'avance celui qui pourra m'aider.
     
  2. passion
    passion WRInaute accro
    Inscrit:
    6 Janvier 2006
    Messages:
    3 925
    J'aime reçus:
    192
    Qu'est ce que c'est à l'origine ? Du JSON? Quelle est la techno utilisée ? JS, PHP etc...
    Faut être plus précis.
     
  3. rick38
    rick38 WRInaute passionné
    Inscrit:
    23 Février 2013
    Messages:
    2 012
    J'aime reçus:
    348
    Si c'est du PHP et puisque ça a l'air d'être du JSON, utilise simplement la fonction json_decode($json, true) qui va renvoyer un tableau (à utiliser du genre $tableau[0]['attributes']['color'])...
     
  4. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    533
    J'aime reçus:
    0
    Merci de ta réponse mais j'ai déja tenté ceci mais sans succès.

    Tout d'abord afin que cela fonctionne je retire le premier et le dernier crochet [] avec

    $string = substr($str_json,1,-1);

    Je me retrouve donc avec cette chaine :

    Code:
    {"titre":"mon titre",
        "description":"description",
        "attributes":{"color":"red",
            "type":"1",
            "id":"19353745"}},
     
    {"titre":"mon titre",
        "description":"description",
        "attributes":{"color":"blue",
            "type":"2",
            "id":"12256745"}},
     
    {"titre":"mon titre",
        "description":"description",
        "attributes":{"color":"black",
            "type":"8",
            "id":"19354745"}}
    Ensuite j'ai tenté ceci mais cela ne donne renvoi rien :

    PHP:
    $ar json_decode($string);
     
    echo 
    $ar[0}; // n'affiche rien
     
    echo $ar->{'titre'}; //n'affiche rien non plus
    Sachant qu'il y a plusieurs titre et qu'en plus il y a un attribute intercalé dedans la chaine (dont je souhaite également récuperer les variables) cela me complique la vie.

    Merci de votre aide
     
  5. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    533
    J'aime reçus:
    0
    Finalement ceci affiche les variable titre et description sans problème, mais comment faire pour récupérer également color, type et id ?

    PHP:
     $ar json_decode($str_jsontrue);

    echo 
    $ar[0]["titre"];  //premier titre

    echo $ar[0]["description"];  //premiere description

    echo $ar[0]["color"] ; //ne fonctionne pas !
     
  6. passion
    passion WRInaute accro
    Inscrit:
    6 Janvier 2006
    Messages:
    3 925
    J'aime reçus:
    192
    Tu n'ecoutes pas les conseils.
    C'est un fichier JSON donc effectivement tu passes ton fichier dans la fonction pour récupérer un tableau objet.
    Il te suffit de faire une boucle foreach pour parcourir le tableau et dans lequel tu auras du style &data->description éventail $data->element->autre pour descendre dans l'arborescence
     
  7. rick38
    rick38 WRInaute passionné
    Inscrit:
    23 Février 2013
    Messages:
    2 012
    J'aime reçus:
    348
    C'est que ton JSON n'est pas valide, il manque un crochet à la fin, teste d'abord ta chaîne sur un site comme https://jsonlint.com/
     
  8. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    533
    J'aime reçus:
    0
    Je viens de régler le problème. Merci pour vos conseils
     
Chargement...
Similar Threads - Découper chaine caractère Forum Date
Faut-il découper une (bonne) page trop longue ? Débuter en référencement 2 Juillet 2021
logiciel facile pour découper une vidéo Développement d'un site Web ou d'une appli mobile 9 Juillet 2017
Wordpress : découper un article en plusieurs pages avec jumpbox et contraintes SEO Développement d'un site Web ou d'une appli mobile 1 Avril 2010
[mySQL] Découper une table et gagner en performance ? Développement d'un site Web ou d'une appli mobile 9 Janvier 2010
decouper un fichier xml Développement d'un site Web ou d'une appli mobile 17 Mars 2009
[spip] Découper en pages de façon automatique [résolu] Développement d'un site Web ou d'une appli mobile 2 Mai 2007
Découper une table de base de donné Développement d'un site Web ou d'une appli mobile 5 Mars 2007
logiciel pour decouper un fichier sql de 10 mo Développement d'un site Web ou d'une appli mobile 10 Janvier 2007
Découper une image dynamiquement Développement d'un site Web ou d'une appli mobile 5 Août 2006
quelqu'un a-til un outils permettant de découper du flash? Développement d'un site Web ou d'une appli mobile 4 Mars 2006
Ranker nouvelle chaine youtube YouTube, Google Images et Google Maps 12 Décembre 2021
Des avis sur ma chaîne youtube Demandes d'avis et de conseils sur vos sites 1 Septembre 2020
Chaine Youtube Akassia Autres réseaux sociaux 24 Mars 2020
Si on change le nom de sa chaine youtube qu'est ce que ça change pour adsense AdSense 22 Novembre 2019
Qu'en penser ? l'application prochaine du CCP Act Référencement Google 19 Novembre 2019
Deux chaînes Youtube monétisés sur un seul compte YouTube, Google Images et Google Maps 7 Mai 2019
Ai-je le droit d'interdire le partage du lien de ma chaîne YouTube(pour une raison quelconque). YouTube, Google Images et Google Maps 16 Décembre 2018
Problème chaîne de redirection HTTP > HTTPS URL Rewriting et .htaccess 21 Novembre 2018
Comment faire décoller ma chaine YouTube ? Demandes d'avis et de conseils sur vos sites 6 Novembre 2018
Extraire chaine d'un Json Développement d'un site Web ou d'une appli mobile 18 Octobre 2018