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

Discussione: Lettura file XML

  1. #1

    Lettura file XML

    Codice PHP:
    $fp fopen("file.xml""r+");
    if(
    flock($fpLOCK_EX)) {
       
    $xml fread($fpfilesize("file.xml"));
       
    $doc = new DOMDocument();
       
    $doc->loadXML($xml);
       
    // operazioni
       
    fwrite($fp$doc->saveXML());
       
    flock($fpLOCK_UN); // rimuovo il lock
    } else {
       
    // file già bloccato

    Questo codice legge il file una sola volta o due?
    O meglio la fopen() e la loadXML() leggono tutto il file ogni volta, cioè due volte?

  2. #2

  3. #3
    Sia N la grandezza del file XML.
    Allora la complessità di questo algoritmo è O(3N)?
    Una volta per la fopen, una volta per la loadXML e una volta per la saveXML giusto?

  4. #4
    Ma sai almeno di cosa stai parlando?

    La "complessità" del parsing XML non dipende dalla sola dimensione del file, ma dal tipo di contenuto. Non puoi semplicemente ridurlo ad un singolo ordine di complessità.

  5. #5
    Voglio dire che più è grande il file e più tempo si impiega ad eseguire la fopen ma anche la loadXML giusto? perchè il parametro passato alla loadXML è tanto più grande quanto più è grande il file. confermi?

  6. #6
    Originariamente inviato da starcraftworld
    Voglio dire che più è grande il file e più tempo si impiega ad eseguire la fopen ma anche la loadXML giusto? perchè il parametro passato alla loadXML è tanto più grande quanto più è grande il file. confermi?
    Rileggi quanto ho scritto perchè è evidente che la prima volta non lo hai fatto.

  7. #7
    Sei d'accordo sul fatto che, in genere, parsare un file molto grande richiede più tempo che non parsare un file molto piccolo?
    In ogni caso questo non c'entra...io sto solo chiedendo se la fopen e la loadXML hanno tempi di esecuzione dipendenti (anche) dalla grandezza del file.

  8. #8
    Originariamente inviato da starcraftworld
    Sei d'accordo sul fatto che, in genere, parsare un file molto grande richiede più tempo che non parsare un file molto piccolo?
    No, non sono d'accordo. Effettuare il parsing di un XML di 10Kb contenente 1000 Tag innestati è più lento di effettuare il parsing di un XML di 100Kb con un solo tag con uno stream base 64 al suo interno.

    Originariamente inviato da starcraftworld
    io sto solo chiedendo se la fopen e la loadXML hanno tempi di esecuzione dipendenti (anche) dalla grandezza del file.
    L'anche lo hai aggiunto solo ora ...

    E comunque, vedi sopra.

  9. #9
    Essere dipendente dalla grandezza del file non significa essere dipendente solo dalla grandezza del file.
    Ho riletto la conversazione ma non ho trovato la risposta...

  10. #10
    Originariamente inviato da starcraftworld
    Essere dipendente dalla grandezza del file non significa essere dipendente solo dalla grandezza del file.
    Essere dipendende dalla grandezza del file significa che se un file è più grande DEVE impiegare più tempo. Peccato che per il parsing XML non sia così...

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.