Escribir Archivo UTF8

(1/1)

Miseryk:
Hola buenas,

estoy teniendo un problema, tengo la siguiente string

abcdefghijklmnñopqrstuvwxyz 0123456789º'¡`+´ç<,.-/*ª!"·$%&()=?¿^¨Ç;:_\|@#~€¬[]{}

cuando intento guardar cada caracter en líneas diferentes, se rompe:

Código
function WriteFile($file, $data)
   {
       //file_put_contents($file, $data.PHP_EOL , FILE_APPEND | LOCK_EX);
       $fp = fopen($file, "a+");
       fwrite($fp, $data.PHP_EOL); //\r\n doesn't work neither
       fclose($fp);
   }
 

Si la guardo sin el "newline" se guarda bien (todo en una línea), acá dejo como se guardan con el newline.

https://pastebin.com/5hM6W5qp

Alguno tiene idea de como solucionar ésto?

Desde ya muchas gracias, saludos!

Miseryk:
Bueno, luego de mucho buscar, se me dió por pensar que debe estar tomando el byte en vez del string, lo cual es raro, porque los precompilados no manejan tipo de datos, pero bueno, era éso, al loopear una string hay que hacer algo feo como ésto

Código
for ($i = 0; $i < strlen($chars); $i++)
{
   WriteFile("test.txt", mb_substr($chars, $i, 1));
}
 

Espero que le sirve a alguien xD

Saludos!

apuromafo CLS:
excelente ...

por otro lado, intentando entender el problema, es que según muchas fuentes
indican que los archivos antes de ser procesados deben ser convertidos.

https://stackoverflow.com/questions/4839402/how-can-i-write-a-file-in-utf-8-format


Saludos Cordiales

Navegación

[0] Índice de Mensajes