Come posso fare per far visualizzare tutto il contenuto di un file tranne la prima righa?
Grazie
Come posso fare per far visualizzare tutto il contenuto di un file tranne la prima righa?
Grazie
dunque dunque...
prova così (codice non testato e scritto al volo):
$contenuto = file("nomefile.est"); //mette le righe del file in un array
//per ogni riga a partire dalla seconda, la visualizza e va a capo
for($i = 1; $i < sizeof($contenuto); $i++)
echo $contenuto[$i]."<br>";
//versione 2: trim() toglie gli (eventuali) spazi a destra e a sinistra
//e' importante perchè file() lascia il carattere 'a capo' alla fine di ogni riga dell'array e può essere scomodo
for($i = 1; $i < sizeof($contenuto); $i++)
echo trim($contenuto[$i])."<br>";
It's always a good day to code
Io volevo fare una cosa un po diversa.
Mi puoi dire come posso fare per verificare quale sia il num dell'array con un if? o maggiore di un numero o minore?
Grazie
Mah, non capisco cosa mi stai chiedendo :)Originalmente inviato da aurora75
Puoi essere un po più preciso?
It's always a good day to code
Vorrei sapere come posso fare per fare un if che controlla il numero dell'array
Partiamo dall'inizio:
Io voglio leggere un file e la prima riga visualizzarla in un modo
mentre le altre in un altro
Quindi se uso $file = file("file.est")
avrò $file[1] con la prima riga
e $file[2] $file[3] $file[4] $file[5] $file[6]
etc con le altre righe
io voglio di $file[1] voglio farne un uso mentre degli altri voglio farne un uso diverso.
Come posso fare?
Avete soluzioni diverse dall'usare il comando file ottenendo quello che chiedo?
Grazie
prova così:Originalmente inviato da aurora75
apri il file come ti è stato detto
quindi ti stampi la prima riga puntando all'indice zero dell'array, a questo punto togli la prima riga e sposti tutto l'arrray in basso con la funzione array_shift()
ed infini per semplificarti la vita fai un $testo = implode("", $array) e ottieni tutto il contenuto dell'array copiato in una stringa senza incasinarti con cicli etc
There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...
Prima che postavi ho fatto così.Originalmente inviato da Evcz
[code:1:44feeb1c8c] foreach($file as $numline => $line) {
if($numline>0) {
echo $line;
}
else {
echo "<b>".$line."</b><br>";
}
}
[/code:1:44feeb1c8c]
Va bene? E' meglio il tuo? E' più veloce il tuo?
Mi puoi dire come posso unire un array tipo con implode senza includere il primo elemento o più elementi senza eliminarli fisicamente dall'array
Grazie
l'implode come ti ho suggerito io dovrebbe essere più veloce (è ottimizzato direttamente per fare quel tipo di funzione e può manipolare automaticamente la zona di memoria contenente l'array, un ciclo come fai tu invece ti costringe a spazzolare l'array da in cima in fondo consumando + risorse)Originalmente inviato da aurora75
questo il codice complessivo che ti consiglio:
[code:1:6a3811d708]$contenuto = file("nomefile.est");
$riga1 = array_shift($contenuto);
$contenutoSenzaRiga1 = implode("",$contenuto);
[/code:1:6a3811d708]
in $riga1 avrai il contenuto della prima riga in $contenutoSenzaRiga1 tutto il resto.
byez
There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...
Grazie