Ciao a tutti...
sto impazzendo con una cosa talmente banale da vergognarmi di scrivere... sarò fuso ma non trovo l'errore...

ho un file di testo con questo formato:

timestamp|id|msg
111111111|1|ciao
222222222|2|prova
333333333|3|ecc

la porzione di codice che legge dal file e scrive nella pagina è questo:

Codice PHP:
<?php
    textfile 
fopen("file.txt""r");
    while (
$riga fgets($textfile,1024) ) {
         
$campiriga explode("|"$riga);
         
$data date("d/m/Y"$campiriga[0]);
         echo 
$data;               //controllo
         
echo $campiriga[0];   //controllo
         
?>
         <div class="messaggio">
             <div class="data"><?php echo $data;?></div>
             <div class="testo"><?php echo $campiriga[2];?></div>
          </div>
     <?php
    
}
    
?>

Non so per quale motivo ma la data della prima iterazione non viene visualizzata; l'echo $data nel div risulta vuoto eppure negli echo di controllo che ho inserito sotto l'explode, la variabile $campiriga[0] contiene correttamente anche il primo timestemp del file, ma non esegue l'operazione $data = date("d/m/Y", $campiriga[0]); per non so quale motivo!
Dalla seconda iterazione in poi invece funziona correttamente e tutti i campi sono avvalorati.
Ho notato anche che se modifico la struttura del file in questo modo:

id|timestamp|msg

ossia invertendo l'ordine di id e timestamp e quindi effettuando l'operazione di conversione su $campiriga[1] invece che su $campiriga[0], il tutto funziona correttamente... quindi il problema è proprio con il 1° campo del 1° rigo... ma perché?!