Visualizzazione risultati 1 fino 2 di 2

Discussione: fopen - l'attributo 'r+' si comporta uguale a 'w+'

  1. #1
    Guest

    Cool fopen - l'attributo 'r+' si comporta uguale a 'w+'

    Devo aggiungere delle righe ad un file... di solito ho sempre usato l'attributo 'a+' che scrive in fondo al file di testo....
    Ma sta volta per il lavoro che devo fare, mi serve l'opposto,
    cioè scrivere ad inizio file senza sovrascrivere il contenuto.

    Pensavo di usare l'attributo r+ ma esso mi cancella la prima riga.
    Facendo una ricerca su google ho visto che anche altre persone hanno avuto il mio stesso problema

    come si può fare?

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Non è un errore di PHP, è così che funziona il flag... diversamente da w+, però, non dovrebbe cancellarti tutto il file quando scrivi (ma va solo a sostituire il numero di byte equivalente).

    Per fare ciò che ti serve, ti consiglio di usare le funzioni file_get_contents() e file_put_contents(), nello specifico:

    1. Leggi tutto il contenuto del file su una stringa, usando file_get_contents()
    2. Concateni in testa alla stringa (ricorda l'eventuale a-capo o simile...) i nuovi dati
    3. Riscrivi tutto sullo stesso file usando file_put_contents()

    Nota: per queste funzioni ti serve PHP 5...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •