gpt4 book ai didi

php - 在 PHP 中编写一个 UTF8 编码的文件

转载 作者:行者123 更新时间:2023-12-02 05:13:35 24 4
gpt4 key购买 nike

我正在编写一个函数来动态生成我的站点地图和站点地图索引。

根据 sitemap.org 上的文档,该文件应以 UTF-8 编码。

我写文件的函数是一个相当简单的函数,大致如下:

function generateFile()
{
$xml = create_xml();
$fp = @fopen('sitemap', 'w');
fwrite($fp, $xml);
fclose($fp);
}

[编辑 - 在评论后添加]

create_xml() 很简单,像这样:

function create_xml()
{
return '<?xml version='1.0' encoding='UTF-8'?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
<url>
<loc>http://example.com/</loc>
<lastmod>2006-11-18</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</urlset>';
}

我需要做些什么来确保文件以 UTF-8 编码?

此外,我想对文件进行 gzip 压缩,而不是不压缩。我知道如何在将文件保存到磁盘后压缩文件。我想知道是否(如何?),我可以在写入磁盘之前压缩文件吗?

最佳答案

是的,您需要确保您的内容(create_xml() 的输出编码为 UTF-8。为确保这一点,您可以使用 utf8_encode()。您需要确保 XML 文件指定 <?xml version="1.0" encoding="UTF-8"?>。我建议在 fopen 模式下输入 'wb',b 表示二进制。这将确保数据完全按原样写入。

关于php - 在 PHP 中编写一个 UTF8 编码的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3117855/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com