Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: DOM e ARRAY

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    216

    DOM e ARRAY

    ho un xml caricato tramite dom

    Codice PHP:
    $dom->load('../xml/list.xml');
    $work $dom->getElementsByTagName('app'); 
    come faccio a caricare gli tutti elementi di quel file in un Array??
    Server utilizzato: MySQL


    (cit.)
    Un misto tra pazzia ed intelligenza

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    controlla se c'è qualche metodo nativo (mi pare di no), altrimenti vedi qualcosa come Using DOMDOcument in PHP to parse XML and return an array of tree structure dove tra l'altro trovi questo:

    Codice PHP:
    function xml2array($xml,$recursive false) {

     if (!
    $recursive ) { $array simplexml_load_string ($xml); }
     else { 
    $array $xml ; }

     
    $newArray = array();
     
    $array $array ;

     foreach (
    $array as $key => $value) {
         
    $value = (array) $value;

         if (isset(
    $value[0])) { $newArray[$key] = trim($value[0]); }
         else { 
    $newArray[$key][] = XML2Array($value,true) ; }
     }

     return 
    $newArray;


  3. #3
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Attenzione che la funzione di Eiyen richiede una stringa come parametro di ingresso e non un oggetto dom. C'è anche un piccolo typo quando la funzione viene richiamata ricorsivamente, non crea problemi ma per pulizia è bene rispettare il case nel nome funzioni.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    sì... la funzione non è mia :) (c'è scritto: è presa da link):

  5. #5
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Si si lo so ho fatto il tuo nome solo perché avevi postato tu.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    eh eh... yes!

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    216
    mmm...
    no non mi è utile a nulla...

    pensavo c'è un modo per contare gli elementi (nodi) all'interno del xml???
    Server utilizzato: MySQL


    (cit.)
    Un misto tra pazzia ed intelligenza

  8. #8
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Sinceramente a volte mi domando se la gente prima di postare sul forum riflette. Mi viene quasi voglia di risponderti che se non ti serve a nulla di arrangiarti.

    La funzione ti serve eccome e fa esattamente quello che hai richiesto. L'unica cosa come ho sottolineata, siccome accetta come parametro in ingresso un stringa XML prima di richiamare la funzione suggerita devi usare il seguente metodo sul tuo oggetto dom:

    http://uk3.php.net/manual/en/domdocument.savexml.php

    Per rispondere alla tua domanda sul contare gli elementi la risposta è si. Il metodo "getElementsByTagName" ritorna un oggetto di tipo "DOMNodeList" che ha un fantastico attributo pubblico length.

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    216
    $dom->load('../xml/list.xml');
    $work = $dom->getElementsByTagName('app');
    $count = $work.length;
    echo $count;

    una cosa del genere???
    non mi stampa nulla anche se non mi da errore...
    Server utilizzato: MySQL


    (cit.)
    Un misto tra pazzia ed intelligenza

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    216
    no scusa mi da questo errore:

    Catchable fatal error: Object of class DOMNodeList could not be converted to string
    Server utilizzato: MySQL


    (cit.)
    Un misto tra pazzia ed intelligenza

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.