Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419

    [PHP][XML] Leggere un file xml

    Ciao a tutti,

    ho la necessita di leggere dei dati da un file XML.

    Cercando informazioni su questo forum in merito alla mia richiesta ho sviluppato questa funzione:

    Codice PHP:
    function leggiXml($nome_file_xml,$tag_principale,$tag_dato)
    {
        
    $quanti20;
        
    $indice 256;
        
    $contatore 0;
        
    $apri_xml fopen($nome_file_xml'r');
        
        while(!
    feof($apri_xml))
        {
            
    $buffer ltrim(Chop(fgets($apri_xml$indice)));
            if ((
    $buffer == "<$tag_principale>") && ($contatore $quanti))
            {
                
    $dato ltrim(Chop(fgets($apri_xml$indice)));
                
                
    $dato ereg_replace"<$tag_dato>"""$dato );
                
    $dato ereg_replace"</$tag_dato>"""$dato );
        
                
    $contatore++;
            }
        }
        
    fclose($apri_xml);
        
        return 
    $dato;

    Il file xml è così strutturato:
    Codice PHP:
    <?xml version="1.0" encoding="utf-8"?>
    <config>
        <pagina1> 
             <titolo>il vecchio e il mare</titolo> 
            <testo>ciao come va</testo> 
            <immagine>c:\dd.jpg</immagine> 
        </pagina1>
    </config>
    Per leggere ad esempio il contenuto del tag titolo, faccio così:

    Codice PHP:
    echo leggiXml("test.xml","pagina1","titolo"); 
    E così funziona... MA se voglio leggere più tag e scrivo questo:

    Codice PHP:
    echo leggiXml("test.xml","pagina1","titolo");
    echo 
    leggiXml("test.xml","pagina1","testo");
    echo 
    leggiXml("test.xml","pagina1","immagine"); 
    mi restituisce sempre

    il vecchio e il mare il vecchio e il mare il vecchio e il mare

    Dove sto sbagliando??

    Grazie.


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  2. #2
    usa simplexml_load_file() di PHP e ti ritrovi tutto il file in una comoda struttura da analizzare con un foreach

  3. #3
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Ciao matteolandi,

    purtroppo non posso usare simplexml_load_file() perchè uso PHP4, e questa funzione è valida solo per PHP 5 (mi ero dimenticato di specificarlo).


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

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.