Problema con carácter '°' mb_ereg_replace

  • Autor Autor Isabel
  • Fecha de inicio Fecha de inicio
Isabel

Isabel

1
Zeta
Verificado
Verificación en dos pasos activada
Suscripción a IA
Estoy desarrollando un script que toma datos de una página. La cadena en donde se guardan los datos contienen el símbolo ° varias veces y no encuentro la manera de eliminarlos.

Estoy utilizando el siguiente código:

PHP:
    $buffer = explode('<div align="center" class="nro1">', file_get_contents($UrlMod));

 foreach ($buffer as $valor) {
            $tempi = explode('</div>', $valor);         
            $cantidades[count($cantidades)] = $temp[0];
        }

echo mb_ereg_replace("°", "", $cantidades[1],"UTF-8");

Aclaro que si yo escribo una cadena cualquiera que contiene el símbolo ° sí los elimina pero no ocurre lo mismo con la que obtengo directamente de la web. ¿Alguien me puede dar una idea?
 
Estoy desarrollando un script que toma datos de una página. La cadena en donde se guardan los datos contienen el símbolo ° varias veces y no encuentro la manera de eliminarlos.

Estoy utilizando el siguiente código:

PHP:
    $buffer = explode('<div align="center" class="nro1">', file_get_contents($UrlMod));

 foreach ($buffer as $valor) {
            $tempi = explode('</div>', $valor);         
            $cantidades[count($cantidades)] = $temp[0];
        }

echo mb_ereg_replace("°", "", $cantidades[1],"UTF-8");

Aclaro que si yo escribo una cadena cualquiera que contiene el símbolo ° sí los elimina pero no ocurre lo mismo con la que obtengo directamente de la web. ¿Alguien me puede dar una idea?

es porke esta obteniendo los datos en una codificacion distinta. converti a utf8 esos datos antes...
PHP:
$cantidades[1] = utf8_encode($cantidades[1]);
echo mb_ereg_replace("°", "", $cantidades[1],"UTF-8");
 
es porke esta obteniendo los datos en una codificacion distinta. converti a utf8 esos datos antes...
PHP:
$cantidades[1] = utf8_encode($cantidades[1]);
echo mb_ereg_replace("°", "", $cantidades[1],"UTF-8");

Gracias por responder al thread, pero tampoco elimina el símbolo °.
 
Gracias por responder al thread, pero tampoco elimina el símbolo °.

una preg el simbolo esta asi tal cual? o esta en formato html?...ejemplo
HTML:
&deg;
hace esto...
PHP:
$cantidades[1] = utf8_encode($cantidades[1]);
die($cantidades[1]);

a ver si el caracter esta tal cual vos lo queres convertir.
 
una preg el simbolo esta asi tal cual? o esta en formato html?...ejemplo
HTML:
°
hace esto...
PHP:
$cantidades[1] = utf8_encode($cantidades[1]);
die($cantidades[1]);

a ver si el caracter esta tal cual vos lo queres convertir.

El símbolo no está en código html es el símbolo ° tal cual lo veo. El segundo código lo agregué y continúa apareciendo de la misma manera.
 
El símbolo no está en código html es el símbolo ° tal cual lo veo. El segundo código lo agregué y continúa apareciendo de la misma manera.

y usar str_replace?? es mejor ke el eregi y mas con un solo caracter.
 
y usar str_replace?? es mejor ke el eregi y mas con un solo caracter.

Sí también probé y nada... de todas maneras muchas gracias por la ayuda pero voy a ver si encuentro una alternativa para tomar los datos.
 
Sí también probé y nada... de todas maneras muchas gracias por la ayuda pero voy a ver si encuentro una alternativa para tomar los datos.

si keres pasame la url por privado y lo veo... pero esto esta mal...
PHP:
$tempi = explode('</div>', $valor);         
            $cantidades[count($cantidades)] = $temp[0];

no seria?
PHP:
            $cantidades[count($cantidades)] = $tempi[0];
 
si keres pasame la url por privado y lo veo... pero esto esta mal...
PHP:
$tempi = explode('</div>', $valor);         
            $cantidades[count($cantidades)] = $temp[0];

no seria?
PHP:
            $cantidades[count($cantidades)] = $tempi[0];

En el código está bien escrito fue un error de escritura porque modifiqué el nombre de las variables para ponerlas aquí. Ahora te envío un mp con el código y la url.

Como era de esperar, Cicklow encontró la solución a este problema que me tuvo ocupada todo el día.
¡¡Muchas gracias Cicklow!!
 
Última edición:
Atrás
Arriba