Cerca su HostingTalk.it(puoi inserire qualsiasi parola, termine, azienda, espressione). Scrivi e premi INVIO!
Loading

+ Rispondi alla Discussione
Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 15 di 16

Discussione: Lettura di un file

  1. #1
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Lettura di un file

    Buona sera,
    ho la necessità di leggere il contenuto di un file e mostrarne il suo contenuto.

    Attualmente mi sono creato questo semplice script:
    Codice PHP:
            $handle fopen($path $file"rb");
            
    $output "";
            
            while(!
    feof($handle)) {
                
    $output .= fread($handle1024);
            }
            
            
    fclose($handle); 
    Però il file non mi viene letto completamente, ma solo in parte.

    Ho provato anche con quest'altro, ma nulla.
    Codice PHP:
            $handle fopen($path $file"rb");{
           
    $output fread($handlefilesize($path $file));
            
            
    fclose($handle); 
    Spero che qualcuno mi sappia aiutare.

    Grazie in anticipo.



  2. #2
    Webhosting evangelist L'avatar di TheDarkITA
    Data Registrazione
    Nov 2007
    Località
    Messina
    Messaggi
    505

    Re: Lettura di un file

    Ciao carlino1994,

    prova con la funzione file_get_contents.

  3. #3
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Si ok, va bene. Ma almeno vorrei sapere dove ho sbagliato, così da correggere i miei errori...

  4. #4
    Webhosting evangelist L'avatar di TheDarkITA
    Data Registrazione
    Nov 2007
    Località
    Messina
    Messaggi
    505

    Re: Lettura di un file

    Codice PHP:
            $handle fopen($path $file"rb");
            
    $output "";
            
            while(!
    feof($handle)) {
                
    $output .= fread($handle);
            }
            
            
    fclose($handle); 
    Cosi dovrebbe andare.

  5. #5
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Come specificato sul sito php.net, omettendo il secondo parametro della funzione fread(), cioè il numero di byte da leggere, viene impostato in automatico una dimensione di 1024 byte, ovvero corrisponderebbe al primo script che ho creato.

  6. #6
    SuperMod L'avatar di Antonio
    Data Registrazione
    Jun 2006
    Messaggi
    3,385

    Re: Lettura di un file

    Citazione Originariamente Scritto da carlino1994 Visualizza Messaggio
    Buona sera,
    ho la necessità di leggere il contenuto di un file e mostrarne il suo contenuto.

    cut...
    Ciao,

    il codice che hai scritto è corretto (sia il primo che il secondo), quindi in teoria dovrebbe fare quel che dici.

    Devi leggere un file locale o uno stream remoto?
    A che punto (quanti byte) riesci a leggere prima che si blocchi la lettura?

  7. #7
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Ciao,
    allora il file che devo leggere è locale. Si trova in una cartella non accessibile dal web. Ho provato anche a leggere il file con file_get_contents() proprio come suggeritomi, ma legge sempre a metà.

    Però, se uso strlen() per conoscere il numero di caratteri, e quindi di byte letti, corrisponde alla dimensione del file originale (in formato UNIX).

  8. #8
    SuperMod L'avatar di Antonio
    Data Registrazione
    Jun 2006
    Messaggi
    3,385

    Re: Lettura di un file

    Prova anche così:

    Codice PHP:
    $handle fopen($path $file"rb");
    $output "";
    while ( (
    $buf=fread$handle1024 )) != '' ) {
        
    $contents .= $buf;
    }       
    fclose($handle); 
    Mi sembra assurdo che non vada, qual è la dimensione del file che leggi?
    Che versione di PHP usi?
    Sei su win (vedendo il "b" nell'apertura file direi di si, ma chiedo)?

  9. #9
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Sempre lo stesso problema.

    La dimensione è di 4952 byte.
    Il mio hosting utilizza PHP 5.2.10.
    Comunque il sistema operativo su cui si trova è Linux, precisamente CentOS. Ho provato ad inserire quel parametro "b", solo per fare una prova.

  10. #10
    SuperMod L'avatar di Antonio
    Data Registrazione
    Jun 2006
    Messaggi
    3,385

    Re: Lettura di un file

    Dimmi che valore ti ritorna:

    Codice PHP:
    $handle fopen($path $file"r");
    $output "";
    $i 0;
    while ( (
    $buf=fread$handle1024 )) != '' ) {
        
    $contents .= $buf;
    $i++;
    }       
    fclose($handle);
    echo 
    $i
    Almeno si cerca di capire se esce prima del dovuto dal ciclo...

  11. #11
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Riporta 5, quindi presuppongo che il ciclo venga ripetuto 5 volte, leggendo 1024 byte ogni volta per un totale di 5120 byte.

  12. #12
    SuperMod L'avatar di Antonio
    Data Registrazione
    Jun 2006
    Messaggi
    3,385

    Re: Lettura di un file

    Citazione Originariamente Scritto da carlino1994 Visualizza Messaggio
    Riporta 5, quindi presuppongo che il ciclo venga ripetuto 5 volte, leggendo 1024 byte ogni volta per un totale di 5120 byte.
    Quindi la teoria dice che nella variabile output ci siano tutti i dati del file.
    A questo punto mi arrendo dato che il codice php è corretto, i cicli per fetchare i dati li esegue e strlen sulla variabile output restituisce il valore corretto.

    A questo punto ti chiedo: ma sei sicuro che non sia il file ad essere incompleto?

  13. #13
    ale
    ale non è collegato
    Webbologo L'avatar di ale
    Data Registrazione
    Jun 2009
    Località
    Vienna
    Messaggi
    169

    Re: Lettura di un file

    Proviamo così

    Codice PHP:
    $data='';

    $fp=$path.$file;
    echo 
    'Going to process '.$fp.', size: '.filesize($fp).'<br>';

    $handle=fopen($fp"r");
    for (
    $i=0feof($handle)==false$i++)
    {
        
    $x=fread($handle1024);
        if (
    $x===false) exit('fread() returned false although feof()');
        
    $data.=$x;
    }
    fclose($handle);

    echo 
    strlen($data).' bytes read with '.$i.' cycles<br>'

  14. #14
    Appassionato L'avatar di carlino1994
    Data Registrazione
    Jun 2009
    Località
    Italia
    Messaggi
    125

    Re: Lettura di un file

    Citazione Originariamente Scritto da Antonio Visualizza Messaggio
    Quindi la teoria dice che nella variabile output ci siano tutti i dati del file.
    A questo punto mi arrendo dato che il codice php è corretto, i cicli per fetchare i dati li esegue e strlen sulla variabile output restituisce il valore corretto.

    A questo punto ti chiedo: ma sei sicuro che non sia il file ad essere incompleto?
    No, non credo.
    Questo script mi serve per mostrare "online" il codice sorgente di phpBB3. Quindi leggo i files originali di phpBB (3.0.6-RC4).

  15. #15
    Webhosting Guru L'avatar di EvolutionCrazy
    Data Registrazione
    May 2006
    Località
    Vicenza
    Messaggi
    2,850

    Re: Lettura di un file

    $file = file('file.txt');
    $testo = join('', $file);

    sempre stesso problema?

    almeno $file contiene tutto il file?
    print_r($file)
    cliente : Seflow, Leaseweb, First-Colo, OVH, Hetzner
    ex-cliente: tutti gli altri, o quasi.

Discussioni Simili

  1. Intel all'attacco con un nuovo disco SSD: fino a 500MB/sec in lettura
    Di Redazione HostingTalk nel forum Hosting e dintorni
    Risposte: 0
    Ultimo Messaggio: 07-03-2011, 11:11
  2. The Big Switch: una lettura consigliata per capire cosa sarà il cloud computing
    Di Redazione HostingTalk nel forum Hosting e dintorni
    Risposte: 1
    Ultimo Messaggio: 27-01-2010, 14:48
  3. upload file
    Di malandrino nel forum WebHosting - Primi passi
    Risposte: 5
    Ultimo Messaggio: 24-12-2007, 15:01
  4. Lettore file avi
    Di pchs nel forum Io Programmo
    Risposte: 2
    Ultimo Messaggio: 02-06-2007, 16:21
  5. file ror...
    Di carla146 nel forum Io Programmo
    Risposte: 0
    Ultimo Messaggio: 23-01-2007, 18:10

Informazioni Discussione

Utenti che Stanno Visualizzando Questa Discussione

Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 ospiti)

Tag per Questa Discussione

Segnalibri

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi