Checa este ejemplo, trate de ser lo más explicito que pude para que lo entendieras:
Código PHP:
<?php
$ruta = "personal.txt"; // ruta hacia tu documento .txt
$fp = fopen ( $ruta, 'r' ); // abrimos el archivo para su lectura
$nuevosdatos = ''; // a esta variable le iremos agregando los nuevos datos
echo "Datos antes de los cambios:<br/>";
while ( !feof( $fp ) )
{
$persona = fgets( $fp, filesize ( $ruta ) );
$datos = explode ( " ", $persona ); // aquí partes los datos de cada personal 0=nombre, 1=sexo,2=pais y 3=departamento
if ( $datos[0] == 'pepe' ) // si el nombre es igual a pepe entonces modificamos su departamento
{
$datos[3] = 'contaduría'; // dato que modificaremos
$nuevosdatos .= $datos[0]." ".$datos[1]." ".$datos[2]." ".$datos[3]."\n";
echo $persona."<br/>";
continue;
}
else // si no entonces sólo agregamos los datos que ya estaban
{
$nuevosdatos .= $persona;
echo $persona."<br/>";
continue;
}
}
fclose($fp);
echo "<p>";
echo "Datos despues de los cambios:<br/>";
$fp2 = fopen ( $ruta, 'w' ); // abrimos el archivo para su escritura borrando los datos anteriores
fwrite ( $fp2, $nuevosdatos ); // escribimos los nuevos datos
fclose($fp2);
$fp3 = fopen ( $ruta, 'r' ); // abrimos el archivo para la lectura despues de que escribimos lo nuevos datos y los mostramos
while ( !feof( $fp3 ) )
{
$persona = fgets( $fp3, filesize ( $ruta ) );
echo $persona."<br/>";
}
fclose($fp3);
?>
Espero que te sirva de algo. Suerte