Si hago esto, me sustituye perfectamente los caracteres
Código PHP:
$conacento=array("Á","É","Í","Ó","Ú","á","é","í","ó","ú","ü","Ñ","ñ");
$pseudocaracteres= array("Á","É","Í","Ó","Ú","á","é","í","ó","ú","ü","Ñ","ñ");
$sql="01000|San Angel|Colonia|Álvaro Obregón|Distrito Federal|Ciudad de México|01001|09|01001||09|010|0001|Urbano|01
01010|Los Alpes|Colonia|Álvaro Obregón|Distrito Federal|Ciudad de México|01001|09|01001||09|010|0005|Urbano|01
01020|Guadalupe Inn|Colonia|Álvaro Obregón|Distrito Federal|Ciudad de México|01001|09|01001||09|010|0006|Urbano|";
$b=explode("|",$sql);
$res="";
for($i=0;$i<=42;$i++){
$campo=$b[$i];
$res.="|".str_replace($conacento,$pseudocaracteres,$campo);
}
Código PHP:
$archivo="./CPS.txt";
$sql=file_get_contents($archivo,true);
$conacento=array("Á","É","Í","Ó","Ú","á","é","í","ó","ú","ü","Ñ","ñ");
$pseudocaracteres= array("Á","É","Í","Ó","Ú","á","é","í","ó","ú","ü","Ñ","ñ");
$b=explode("|",$sql);
$res="";
for($i=0;$i<=42;$i++){
$campo=$b[$i];
$res.="|".str_replace($conacento,$pseudocaracteres,$campo);
}