Ошибка кодирования в динамически создаваемых XML-файлах из-за кодировки GB2312?

Я генерирую XML-файлы с кодировкой GB2312 MySQL и PHP из-за китайских символов на моем сайте.

Он работал нормально, пока я не переместил свой сайт с общего веб-хостинга на Ubuntu 16.04 VPS и не установил Plesk.

Теперь все мои XML-файлы выдают ошибку кодирования, и я предполагаю, что это из-за этой кодировки GB2312.

Возможно ли, что сервер не распознает кодировку, когда я установил все через стандартную установку Plesk?

Если да, есть ли настройка или способ включить / установить кодировку GB2312 на моем сервере?

<?php
header ("content-type: text/xml");
echo '<?xml version="1.0" encoding="GB2312"?>
<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">';

include 'connection.php';
mysqli_query($bd, "SET NAMES GB2312");
$query = mysqli_query($bd, "SELECT MAX(datum) as max_datum FROM apps") or die(mysqli_error());
$dateMAX = mysqli_fetch_assoc($query);
$date = $dateMAX['max_datum'];

$urls = mysqli_query($bd, "SELECT appID, title, id FROM apps WHERE id >= 1 AND id < 50000")or die(mysqli_error());
while ($string = mysqli_fetch_array($urls)) {
$title = $string['title'];
$titletrim = preg_replace('/[_%:"`\[\]\.\(\)%&-\'|!?\.,#‘<>]/s', '', $title);
$titleurl=str_replace(' ', '-', $titletrim);
?>
<url>
<loc>http://easitunes.com/<?php echo $titleurl."-".$string['appID']; ?></loc>
<lastmod><?php echo $date; ?></lastmod>
<changefreq>hourly</changefreq>
<priority>1</priority>
</url>
<?php
}
?>
</urlset>

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]