Salve,
avrei bisogno di un consiglio per quanto concerne la gestione file mediante codice php
ho questo problema :
ho un file che chiamiamo test.txt che contiene dati strutturati in questo modo :
pippo:11:v23:S13.0E:200:512:650:576:0:3401:318:5200:0
andrea:11:v23:S13.0E:200:512:650:576:0:3401:318:52 00:0
giuseppe:11:v23:S13.0E:200:512:6e0:576:0:3401:318: 5200:0
pippo:11:v23:S13.0E:200:512:650:5436:0:3401:318:5200:0
carlo:11:v23:S13.0E:200:51232:650:576:0:3401:318:5 200:0
gino:11:v23:S13.0E:200:232:650:576:0:3401:318:5200 :0
pippo:11:v23:S13.0E:200:512:650:576:0:3401:318:5200:0
etc etc
una volta letto il suo contenuto con questo codice :
codice:
$conf = array();
if(!$p_file=fopen($upload_dir."/".$file_name,"r")){
echo "Spiacente, non posso aprire il file ". $_FILES["upfile"]["name"];
} else {
while(!feof($p_file))
{
$linea = fgets($p_file, 255);
$conf[] = $linea;
}
$conftot = implode($conf);
fclose($p_file);
}
Avrei la necessità di controllare se come nell'esempio postato su per
pippo:11:v23:S13.0E:200:512:650:576:0:3401:318:520 0:0..
se è presente la stessa riga più volte cambiare il suo valore finale 0 in 1 e se ancora presente una medesima riga in 2 e cosi via e poi salvare il file con le modifiche apportate
nell'esempio postato su dovrei ottenere :
pippo:11:v23:S13.0E:200:512:650:576:0:3401:318:5200:0
andrea:11:v23:S13.0E:200:512:650:576:0:3401:318:52 00:0
giuseppe:11:v23:S13.0E:200:512:6e0:576:0:3401:318: 5200:0
pippo:11:v23:S13.0E:200:512:650:5436:0:3401:318:5200:
1
carlo:11:v23:S13.0E:200:51232:650:576:0:3401:318:5 200:0
gino:11:v23:S13.0E:200:232:650:576:0:3401:318:5200 :0
pippo:11:v23:S13.0E:200:512:650:576:0:3401:318:5200:
2
etc etc
è possibile realizzarlo?
io avrei pensato di inserire i risultati della fgets in un array assegnare ad una variabile tramite implode il contenuto dell'array e gestire la cosa con strstr e poi modificare con una preg_replace ? ma come posso confrontare se in un array è presente lo stesso valore più volte e modificarne il contenuto nel mio caso con un counter finale?
consigli?
Grazie