如何以UTF-8格式编写文件


How to write a file in UTF-8 format

我读取了一个带有simplexml_load_file()函数的XML文件。我认为这个函数写得很好,并且正确地支持XML编码。我的XML文件是UTF-8格式的,即它包含普通的ANSI字符以及多字节编码的国家字符。

所以,现在我想用fopen()fwrite()同样以UTF-8格式写回XML文件。

我应该执行一些转换来正确地执行吗?

假设变量$a包含一些UTF-8编码。它写得正确吗?

如果您的xml真的已经在utf8中编码,那么simplexml生成的字符串也将是utf8。意思是——只需按原样将它们写入文件即可。

php与底层libxml的接口有点古怪。即使xml可能是utf8编码的,也要确保xml以正确的编码声明开头,否则可能会被误解。

<?xml version="1.0" encoding="UTF-8"?>