Ciao a tutti,

sto scrivendo una pagina php che deve eseguire quanto segue:
1) Leggere un file txt(ogni record del file è formato da sottostringhe separate da ";" e non sono di lunghezza fissa)
2) Estrapolare da ogni record del file la sottostringa che si trova dopo la terza occorenza del ";"
3) Verificare se tale sottostringa è presente in un vettore
$) Se non è presente nel vettore inserirla nel vettore stesso

Fin qui tutto bene.

Quando provo a stampare una stringa qualsiasi dopo il while non stampa nulla. Come mai?

Ecco il codice:

codice:
<?php 
$fp = fopen("myFile.txt","r"); 

if (!$fp) { 
   echo "Errore di apertura del file"; 
   } 
else  {
   $vettptn[0] = NULL;
   $len = 0;
   while(!feof($fp)) 
   {
      $str = fgets($fp);

      // estrapolazione sottostringa 
      $k = 0;
      $i = 0;
      while ($k != 3)
      {
           if (strcmp($str[$i],";") == 0)
           {
              $k = $k + 1;
           }
           $i = $i + 1;
       }
       $pos = $i;
       while (strcmp($str[$i],";") != 0)
       {
          $i = $i + 1;
       }
       $end = $i - 1;
       $strptn = substr($str, $pos , $end-$pos+1);

       // Inserimento nel vettore 
       if (!(in_array($strptn,$vettptn)))
       {
          $vettptn[$len] = $strptn;
          $len = $len + 1;
       }
    }
    echo "CIAO 
";
    }
fclose($fp);
?>

Grazie in anticipo per l'aiuto