unescape - ¿Problema html_entity_decode en PHP?
quitar caracteres html php (2)
Estoy tratando de convertir las entidades HTML de una cadena fuente a su equivalente en caracteres literales.
Por ejemplo:
<?php
$string = "Hello – World";
$converted = html_entity_decode($string);
?>
Si bien esto convierte correctamente la entidad en la pantalla, cuando veo el código HTML, todavía muestra la entidad explícita. Necesito cambiar eso para que literalmente convierta la entidad ya que no estoy usando la cadena dentro de una página HTML.
¿Alguna idea sobre lo que estoy haciendo mal?
Para su información, estoy enviando la cadena convertida al servicio de notificaciones Push de Apple:
$payload[''aps''] = array(''alert'' => $converted, ''badge'' => 1, ''sound'' => ''default'');
$payload = json_encode($payload);
Intenta usar el juego de caracteres
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<?php
$string = "Hello – World";
$converted = html_entity_decode($string , ENT_COMPAT, ''UTF-8'');
echo $converted;
?>
Esto debería funcionar y debería convertirse también en la fuente.
–
se asigna a un carácter UTF-8 (el guión de em), por lo que debe especificar UTF-8 como la codificación de caracteres:
$converted = html_entity_decode($string, ENT_COMPAT, ''UTF-8'');