Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    46

    cilclo foreach: saltare la prima riga?

    ciao a tutti, mi sono arenato in un problema che per molti di voi sarà sicuramente una cavolata, spero che potrete aiutarmi.
    ho fatto un piccolo ciclo che ha lo scopo di bufferizzare un file contenente stringhe delimitate da tabulazione:
    $filedat="miofile.dat"
    $righe = file($filedat);
    $newrighe = array();

    foreach ($righe as $riga) if(trim($riga) !='')
    {
    $newrighe[] = $riga;
    }
    flush();
    ob_flush();
    a questo punto ho il mio bel buffer pronto per essere inserito in una tabella, solo che c'è un problema, nel buffer ci trovo anche (e ovviamente) la prima riga del file, che contiene le intestazioni di colonna (si tratta di una tabella esportata che devo prendere così com'è).
    ho pensato di passare un parametro al ciclo foreach per istruirlo a saltare la prima riga ma non ho trovato niente e sinceramente non sò neanche se sia possibile....
    sapresti darmi qualche indicazione o alternativa
    grazie

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Codice PHP:
    for ($i 1$tot count($righe); $i $tot$i++)
    $newrighe[] = $righe[$i]; 

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    46
    provo subito....

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Comunque se vuoi solo rimuovere la prima riga dal tuo array puoi anche fare

    array_shift($righe);

    e se fai un print_r($righe) vedrai che contiene tutto tranne la prima riga.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    46
    perfetto, così và benissimo ..io continuavo a focalizzare sul ciclo foreach senza pensare che for è molto più flessibile... meglio che stacco e faccio una pausa
    grazie1000!!

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    come ti dicevo prima se usi array_shift elimini la prima riga dall'array e dopo lo puoi ciclare anche usando il foreach.

  7. #7
    Originariamente inviato da nicola75ss
    come ti dicevo prima se usi array_shift elimini la prima riga dall'array e dopo lo puoi ciclare anche usando il foreach.
    o anche while ($elem = array_shift) { /*---*/ }
    Windows mom: «Finish your veggies! There are processes in Ubuntu that are starving to death!»
    NoWhereBlog
    FlatPress Blog Flat file, valido xhtml, espandibile

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.