Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/01/2015, 12:03
Rebuilding
 
Fecha de Ingreso: julio-2014
Mensajes: 161
Antigüedad: 9 años, 10 meses
Puntos: 4
str_replace comportamiento inadecuado

Hola

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);    

Pero cuando obtengo la informacion de un archivo simplemente no sustituye nada a que se debe?, me devuelve exactamente lo que tiene el archivo, sin hacerme ninguna sustitucion

Código PHP:
$archivo="./CPS.txt";
$sql=file_get_contents($archivo,true);
$conacento=array("Á","É","Í","Ó","Ú","á","é","í","ó","ú","ü","Ñ","ñ");
$pseudocaracteres= array("&Aacute;","&Eacute;","&Iacute;","&Oacute;","&Uacute;","&aacute;","&eacute;","&iacute;","&oacute;","&uacute;","&uuml;","&Ntilde;","&ntilde;");
$b=explode("|",$sql);
$res="";
for(
$i=0;$i<=42;$i++){
    
$campo=$b[$i];
    
$res.="|".str_replace($conacento,$pseudocaracteres,$campo);