Visualizzazione dei risultati da 1 a 6 su 6

Discussione: generare array da xml

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    106

    generare array da xml

    Ciao a tutti,
    ho un file xml con questa struttura
    codice:
    <?xml version="1.0" encoding="iso-8859-1"?>
    <menu>
    <quinquenni>
    <anni idfile="quinquennio_1">1980/1984</anni>
    <anni idfile="quinquennio_2">1985/1989</anni>
    <anni idfile="quinquennio_3">1990/1994</anni>
    <anni idfile="quinquennio_4">1995/1999</anni>
    <anni idfile="quinquennio_5">2000/2004</anni>
    <anni idfile="quinquennio_6">2005/2009</anni>
    </quinquenni>
    <categorie>
    <tipologie idcolore="00B9FF">cartaceo</tipologie>
    <tipologie idcolore="006AAF">video</tipologie>
    <tipologie idcolore="92278F">pubblicazioni</tipologie>
    <tipologie idcolore="EC008C">fotografie</tipologie>
    <tipologie idcolore="FF0000">oggetti</tipologie>
    <tipologie idcolore="F7941D">marchi</tipologie>
    <tipologie idcolore="FFE400">calendari</tipologie>
    </categorie>
    </menu>
    e vorrei ottenere 4 array, uno col contenuto degli attributi idfile, uno col contenuto dei tag anni, uno col contenuto degli attributi idcolore e uno col contenuto dei tag tipologie.
    Qualcosa del tipo $idfile= array ("quinquennio_1","quinquennio_2","quinquennio_3 ", ecc.);
    Qualcuno sa dirmi come fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    106
    up

  3. #3
    se hai la libreria simplexml installata sul server (tuo, pc di casa, o hosting?) puoi usare una di queste funzioni...non hai 4 array ma ne hai uno solo comprensivo di tutto

    http://it.php.net/manual/it/function...-load-file.php
    http://it.php.net/manual/it/function...oad-string.php

    Perchè essere stupidi non è una menomazione ma un diritto di tutti!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    106
    Non credo sia installata (pc hosting) perchè avevo già provato e non funzionava.

    Girando sul forum di html.it ho trovato il link a questa funzione, che mi genera un array multidimensionale da cui poi vado a costruirmi gli array che mi interessano in questo modo

    Codice PHP:
    //costruisco l'array $idfile
    $num count ($xml[menu][_c][quinquenni][_c][anni]);
    $idfile = array();
    for (
    $mul 0$mul $num; ++$mul) {
    $idfile [$mul] = $xml[menu][_c][quinquenni][_c][anni][$mul][_a][idfile];

    Funziona (ottengo ciò che voglio) però mi sembra un metodo un po' contorto e siccome conosco pochissimo di php mi chiedevo se ci fosse un metodo più semplice.

    Comunque grazie x la risposta

  5. #5
    praticamente il risultato è lo stesso... comunque non è tanto contorto basta farci un po la mano... se trovo qualcosa di più semplice e rapido, lo posto qui

    Perchè essere stupidi non è una menomazione ma un diritto di tutti!!!

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    106
    Ok, grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.