Salve a tutti!
Se provo a creare un file vcf in questo modo:

codice:
$vcf = "BEGIN:VCARD".PHP_EOL;
$vcf .= "VERSION:2.1".PHP_EOL;
$vcf .= "N:Nicolò,Turrì,,".PHP_EOL;
$vcf .= "FN:Nicolò Turrì".PHP_EOL;
$vcf .= "END:VCARD".PHP_EOL;

file_put_contents('prova.vcf',$vcf);
i caratteri accentati NON vengono visualizzati correttamente.
Se invece modifico l'ultima riga così:

codice:
file_put_contents('prova.vcf',utf8_decode($vcf));
i caratteri accentati vengono visualizzati bene.

Ora, con utf8_decode si passa da utf8 a iso-8859-1, solo che utf8 dovrebbero visualizzarsi correttamente molti più caratteri. E' evidente che mi sfugge qualcosa. Qualcuno potrebbe spiegarmi perché funziona in un modo e non in un altro?

Grazie!