tus echos de php deben llevar utf8_encode para que pueda transmitir los datos aceptando mas tipos de caracteres.
<?php
$text = "\xE0";
echo utf8_encode($text);
?>
un análisis y conversación mas profunda del porque te aparecian esos simbolos puedes encontrarla aquí:
¿Por que el Carácter inspector (�) aparece en algunos datos obtenidos de la Base de Datos?
pero en resumen: "El contenido se compone de una secuencia de caracteres. Los caracteres representan letras del alfabeto, puntuación, etc. Pero el contenido se almacena en un ordenador como una secuencia de bytes, que son valores numéricos. A veces se utiliza más de un byte para representar un único carácter. Al igual que los códigos utilizados en el espionaje, la forma en que la secuencia de bytes se convierte en caracteres depende de la clave que se haya utilizado para codificar el texto. En este contexto, esa clave se denomina codificación de caracteres." y si la codificación no es la correcta para el texto que se esta utilizando, o que fue extraído, o en el camino se le cambio la codificación. simplemente se mutara la cadena de string y veras símbolos que son ilegibles y que corresponden a sus valores ASCII en la mayoría de las veces
fuente: https://www.w3.org/International/questions/qa-choosing-encodings.es
también en esta publicación puedes encontrar mas detalles sobre cuando usar utf8_enconde y cuando utf8_decode
¿Cuándo usar utf8_encode o utf8_decode?
por ultimo, debes saber que PHP también tiene una configuración de codificación seteada por defecto, la cual puedes cambiar de forma muy simple. te dejo el link de la documentación al respecto
https://www.php.net/manual/es/function.mb-internal-encoding.php