Credo che l'errore sia qui:
Codice PHP:
explode(';',$str25[$n2]);
La variabile $str25 non è definitia invece $str2 lo è.
Comunque con:
Codice PHP:
str_replace(" ", ";", $file_txt2);
n spazi vengono convertiti in n punti e virgola, se invece vuoi convertire più spazi in un solo punto e virgola puoi usare preg_replace:
Codice PHP:
preg_replace("/\s+/", ";", $file_txt2);
-
Comunque se ho capito bene quello che vuoi fare, puoi anche evitare di fare tanti passaggi e usare preg_split invece di preg_replace + explode:
Codice PHP:
$file = file('dati.txt');
$riga = end($file);
$valore = preg_split('/\s+/', $riga);
echo $valore[0];
echo $valore[1];