Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Ciclare un array multi-dimensionale dinamicamente

    Buon giorno, vorrei sapere se è possibile adottare un metodo che permette di ciclare array contenente altri array(che a suo volta possono, o non possono, contenere un altro array) e verificare se quest'ultimo è effettivamente un array o semplicemente un valore (stringa,intero,float......) dell'array.

    Esempio per spiegarmi meglio:

    Codice PHP:
    //primo array generazione
    $array_padre = array(
        
    "nome" => "Marco",
        
    "cognome" => "ABC",

        
    "specifiche" => array(
             
    "eta" => "39",
             
    "peso" => "78",

             
    "parenti" => array(
                  
    "parenti_nome" => "Alessio",
                  .....
                  .....
              )
    //fine array parenti  
        
        
    )//fine array specifiche

    )//fine array padre 

    Io utilizzo il ciclo foreach() per ciclare l'array padre ma, come ho detto, questo array potrà contenere o meno, come in questo esempio, il campo 'specifiche' che a sua volta è un array.

    Io mi trovo di fronte a questo problema, visto che devo stampare il contenuto dell'array padre per generare dinamicamente un file XML; se dentro all'array 'parenti', ad esempio, inserisco un altro array viene generato un warning e non scrive niente su file, ovviamente, perchè a fwrite() passo un array e non una stringa.

    Esiste un modo, oppure una dritta, per verificare dinamicamente questa condizione?
    O devo inserire per ogni ciclo un contro if(is_array($x)){} e eseguire le due azione distinte, ovvero la stampa del valore nel caso in cui non sia un array, oppure un ulteriore ciclo foreach() per poi poter stampare i valori?

    Però inserendo il controllo if mi trovo a dover gestire io gli annidamenti che teoricamente dovrebbero essere dinamici. Quindi inserendo IF() fisso un massimo di annidamenti che oltre quel limite non è possibile gestire un ulteriore annidamento e la cosa sarebbe alquanto scomoda.

    Spero di essermi spiegato bene.

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Ciao, qui c'è un esempio .

  3. #3
    Grazie mille!
    Era proprio quello che cercavo ma non riuscivo a trovare in rete.

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.