西里尔文字显示为????在PHP中
我正试图打印数据库中包含countrylist的值。该数据库中的一个字段是西里尔语。我的PHP脚本如下所示:西里尔文字显示为????在PHP中,php,utf-8,cyrillic,Php,Utf 8,Cyrillic,我正试图打印数据库中包含countrylist的值。该数据库中的一个字段是西里尔语。我的PHP脚本如下所示: include_once("db.php"); $query = mysql_query ("SELECT * FROM country"); $row = mysql_fetch_array($query); do { $id = strtolower($row["id"]); $value = ($row["runame"]); echo $id . "
include_once("db.php");
$query = mysql_query ("SELECT * FROM country");
$row = mysql_fetch_array($query);
do {
$id = strtolower($row["id"]);
$value = ($row["runame"]);
echo $id . " " . $value . '<br/>';
} while ($row = mysql_fetch_array ($query));
ad ???????
ae ???????????? ???????? ???????
af ??????????
ag ??????? ? ???????
ai ????????
所以,显然我需要为这个PHP脚本设置UTF-8。。。以某种方式有人知道怎么做吗?
谢谢你抽出时间 连接到MySQL后,尝试使用
设置名称utf8
:
mysql_query("SET NAMES utf8");
或者,如果在数据库中使用cp1251,请设置此编码
正如政府所说:
SET NAMES指示客户端将使用哪个字符集发送SQL
向服务器发送的语句。。。它还指定服务器应该使用的字符集
用于将结果发送回客户端
顺便说一句,
strtolower
仅用于单字节字符。为什么不将do…while()更改为while(){}end以摆脱第一次fetch_array()调用?这很有帮助,谢谢“不建议使用mysql_query()设置它(例如设置名称utf8)”