gpt4 book ai didi

php - MySQL:网页上的 ucs2_slovenian_ci 到 utf-8

转载 作者:可可西里 更新时间:2023-11-01 07:35:45 25 4
gpt4 key购买 nike

我有一个 MySQL 数据库,其中的表采用 ucs2_slovenian_ci 编码。我想在utf-8编码网页上写表格内容。到目前为止,我尝试过:

mysql_set_charset ("utf-8");
mysql_query("SET NAMES 'utf-8'");
...
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
...
<?php echo utf8_encode($text); ?>
...

我仍然收到奇怪的符号(问号)而不是字母 Š、Ç、Ž似乎没有任何效果。

奇怪的是,使用 php 命令 mysql_client_encoding($link) 它说我有 latin1 编码。当我在 Firefox 中查看页面时,它显示为 UTF-8。怎么了?

请帮忙。

最佳答案

ucs2_slovenian_ci encoding

那不是编码而是排序规则。排序规则是关于某物如何排序的信息。

对于您的网站,这甚至都不重要,因为这是数据库对自身的了解 - 或者更好:存储在自身中的数据。

对于您的网站脚本,更重要的是告诉您的数据库您需要哪种编码 - 这里:UTF-8。

您通过指定数据库客户端编码向数据库服务器发出信号。请查阅您的数据库客户端驱动程序手册如何指定。可能是:

mysql_set_charset("utf8", $link);

注意:它是 utf8 而官方写的是 UTF-8。这是 MySQL 数据库的特殊之处,在设置该参数时将 UTF-8 写为 utf8

不要使用:

mysql_query("SET NAMES 'utf-8'");

因为它已被弃用(不好,请参阅 PHP 手册和 Whether to use “SET NAMES”)。

如果您告诉数据库客户端您希望使用哪种编码,则无需自己编码,如下所示:

utf8_encode($text);

删除那些东西,你不需要它。

关于php - MySQL:网页上的 ucs2_slovenian_ci 到 utf-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10166376/

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