Jump to content

(SOLUCIONADO) Cómo codificar UTF-8 en un fichero de texto para envío de los mensajes


Grafeco

Recommended Posts

Muy buenas!

 

Estoy modificando el módulo de mailalerts para que además de los envíos principales, me haga uno al servidor, adjuntando un fichero .txt con los datos de la compra del cliente.

 

El caso es que todo va genial hasta que nos topamos con la codificación en php...

 

La parte de creación del fichero que se envía es la siguiente:

<?php
$DescriptorFichero = fopen("ficha.txt","w");

 

$string1 = "Añoró"; 
fputs($DescriptorFichero,$string1); 
 


fclose($DescriptorFichero); 
?>

He puesto la palabra "Añoró" como mensaje para probar los caracteres con tilde y la ñ.

 

 

¿Alguien sabe cómo codificar ese archivo txt en UTF-8 para que salga correctamente?

 

 

Edited by Grafeco (see edit history)
Link to comment
Share on other sites

Editando con  p.ej notepad++ puedes cambiar la codificación de cualquier fichero. De esta forma si el fichero que abre ya esta codificado en UTF-8 supongo que no habrá problemas.
 
También puedes usar funciones php como utf8_encode($string); o iconv('YOUR CURRENT CHARSET', 'UTF-8', $string);

Link to comment
Share on other sites

Gracias Enrique, ya lo he solucionado, no es cosa del notepad, ya que lo que quiero cambiar es la codificación del fichero en txt que se manda en un correo adjunto por php. Lo que hecho de la siguiente manera:

fclose($DescriptorFichero); 

echo iconv("UTF-8", "ISO-8859-1//TRANSLIT", $DescriptorFichero), PHP_EOL;

He añadido la conversión después de cerrar el documento y me funciona perfectamente.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...