Foros del Web » Programando para Internet » PHP »

Imprimir caracter 'º'

Estas en el tema de Imprimir caracter 'º' en el foro de PHP en Foros del Web. Hola a tod@s, tengo un script muy sencillito que lo único que hace es convertir grados centígrados (ºC) en grados Farenheit (ºF) y viceversa. Programar ...
  #1 (permalink)  
Antiguo 17/08/2011, 07:13
 
Fecha de Ingreso: febrero-2005
Ubicación: Madrid
Mensajes: 549
Antigüedad: 19 años, 2 meses
Puntos: 0
Imprimir caracter 'º'

Hola a tod@s,

tengo un script muy sencillito que lo único que hace es convertir grados centígrados (ºC) en grados Farenheit (ºF) y viceversa.

Programar ésto no tiene el menor misterio pero a la hora de mostrar los datos por pantalla me encuentro con el siguiente problema:

Si hago
Código:
echo "$cºC equivale a $fºF";
Siendo $c la variable que contiene el dato de grados centígrados y $f en Farenheit, me encuentro con que la salida por pantalla es "equivale a".

Probé entonces a escapar el caracter 'º' así:
Código:
echo "$c\ºC equivale a $f\ºF";
Y la salida por pantalla ahora es "5\ºC equivale a 41\ºF".

En resumen, la mejor solución que he encontrado es:
Código:
echo "$c ºC equivale a $f ºF";
Pero imagino que tiene que haber alguna forma de escapar el caracter 'º' para que se muestre al lado (sin espacio en blanco de por medio) del valor de la variable.

¿Alguien me puede ayudar con ésto? He mirado en la documentación oficial de PHP y en Google pero no he encontrado respuesta :(

Mil gracias de antemano por la ayuda
__________________
Nadie dijo que ésto iba a ser fácil
  #2 (permalink)  
Antiguo 17/08/2011, 07:20
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Imprimir caracter 'º'

Seguro que esto te ayudará. No es exactamente escapar los caracteres, es que no estás usando un charset adecuado. También se pueden cambiar las cabeceras de los HTMLs con:
header("Content-Type: text/html;charset=iso-8859-1");

Hay varias formas, usa la que quieras.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?

Última edición por vgonga1986; 17/08/2011 a las 07:24 Razón: Corrección
  #3 (permalink)  
Antiguo 17/08/2011, 10:49
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Imprimir caracter 'º'

Con todo el respeto que se merece @vgonga1986 no es ningún problema de charset... Ni de cabeceras.

echo "$cºC equivale a $fºF";

El signo de de grados es permitido en una variable y lo que estas haciendo es imprimir 2 variables no definidas $cºC y $fºF. Como no tienes activados los errores tipo notice para variables no definidas, te imprime simplemente el contenido " equivale a ". En resumen las variables $cºC y $fºF no existen.

Una variable puede ser por ejemplo:

Código PHP:
Ver original
  1. $ºandresdzphpºandres = 'Esto es un ejemplo';

Aclaro que no es una buena práctica pero es aceptado por PHP

y podrías hacer algo como:

Código PHP:
Ver original
  1. echo $c . 'ºC equivale a ' . $f . 'ºF';

o así:

Código PHP:
Ver original
  1. echo "{$c}ºC equivale a {$f}ºC";

o con su nombre de entidad HTML reemplazando el grado por &#176

de está forma funcionarían tus variables reales $c y $f

Saludos
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 17/08/2011 a las 11:09
  #4 (permalink)  
Antiguo 17/08/2011, 12:40
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Imprimir caracter 'º'

Tienes toda la razón, un desliz.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #5 (permalink)  
Antiguo 18/08/2011, 04:00
 
Fecha de Ingreso: febrero-2005
Ubicación: Madrid
Mensajes: 549
Antigüedad: 19 años, 2 meses
Puntos: 0
De acuerdo Respuesta: Imprimir caracter 'º'

Gracias por la ayuda vgonga1986 y andresdzphp

Utilicé la opción de incluir el nombre de las variables entre llaves y ahora me funciona perfecto.

Gracias!
__________________
Nadie dijo que ésto iba a ser fácil

Etiquetas: variables, caracteres
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:25.