cancellazione stringa da file

rattoeur

Nuovo Utente
19 Lug 2007
4
0
0
salve, mi trovo bloccato nello sviluppo di un pezzo di codice che mi permetta, avendo il numero di riga di un file txt, di effetttuarne la cancellazione. Mi sembra assurdo che in php sia costretto a cancellare e ricreare per intero il file... qualcuno ha suggerimenti?:incazz2:
 
Cancellare una stringa equivale a scrivere su un file, semplicemente stai sostituendo una stringa con uno spazio vuoto.
Una volta che hai aperto il file puoi usare str_replace
 
ti ringrazio,
avevo però letto di altri utenti in giro per forum italiani e non (sull'argomento purtroppo non esiston molti esempi se non di solo accodamento a file ) che hanno avuto lo stesso problema mio... momentaneamente ho risolto cosi magari può essere d'aiuto:

$path = "./upload_img/";
$myFile = "database.txt"; //dichiaro il nome del file
$handle = fopen($myFile, 'r');//apro il file in lettura
$myFile2 = "database2.txt"; //apro il secondo file
$handle2 = fopen($myFile2, 'w');//lo apro in scrittura
while (!feof($handle)) //finche non si è raggiunta la fine del documento
{
$linea = fgets($handle, 1024); //leggo la singola linea
$array = explode("|", $linea);//esplode i singoli elementi dell'array
if ($array[1]==$codice ){ //se rileva il codice esegue la cancellazione
$linea=""; //imposta la stringa a NULL
}

@fwrite($handle2,$linea); //scrive il nuovo file senza la linea cancellata
}

fclose ($handle);
fclose ($handle2);
copy ($myFile2, $myFile);



com questo codice creo il secondo file epurato dalla linea ricercata con la variabile $codice successivamente lo cancello.
proverò come mi hai consigliato, sicuramente è + pulito....:book:
 

Discussioni simili