当我这样做时,我的输出显示为 ??????。在数据库表中,它正确显示为阿拉伯语。我究竟做错了什么?我也知道我应该添加代码以将 mysqli 设置为 u-6ren">
gpt4 book ai didi

php无法读取utf8中的字符

转载 作者:行者123 更新时间:2023-11-29 01:42:11 24 4
gpt4 key购买 nike

我正在尝试执行以下简单操作:

<?php
header("Content-Type: text/html;charset=UTF-8");

$con=mysqli_connect("localhost","dsdsds","test1234","dsdsds");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}


$result = mysqli_query($con,"SELECT * FROM discounts");

while($row = mysqli_fetch_array($result))
{
echo $row['name'] . " " . $row['rate'];
echo "<br>";
}




?>

当我这样做时,我的输出显示为 ??????。在数据库表中,它正确显示为阿拉伯语。我究竟做错了什么?我也知道我应该添加代码以将 mysqli 设置为 utf8,当我这样做时,它会破坏脚本。

  if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
} else {
printf("Current character set: %s\n", $mysqli->character_set_name());
}

期待您的支持

最佳答案

mysqli 有两种方法调用方法。面向过程和面向对象。您会在文档中看到这两种方法。

这是程序风格:

$con=mysqli_connect...
$result = mysqli_query...
$row = mysqli_fetch_array...

这是 OO 风格:

$mysqli = new mysqli("localhost"...
$mysqli->set_charset("utf8")
$result = $mysqli->query...
$row = $mysqli->fetch_array...

看起来您正在混合样式。将 $mysqli->set_charset 更改为 $mysqli_set_charset 并重试。

如果你喜欢我的意见,我更喜欢 OO 风格。

关于php无法读取utf8中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17862300/

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