这是我在 phpstorm 中的代码。
MySQL 数据库中的Fname
是student
表的一个varchar
字段,包含波斯字符。我将数据库排序规则设置为 UTF8,但此代码仍然返回“??????”结果。
使用中有什么问题?
<?php
$conn = new PDO("mysql:host = localhost;dbname=university;charset = utf8","root","");
$query = "SELECT * FROM student WHERE status = 1";
$result = $conn->query($query);
while($row = $result->fetch(PDO::FETCH_ASSOC)){
echo $row['Fname'],"<br>";
}
?>
最佳答案
尝试
$conn = new PDO("mysql:host=localhost;dbname=university;charset=utf8","root","",
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
代替
$conn = new PDO("mysql:host = localhost;dbname=university;charset = utf8","root","");
关于php - 在 php 中使用 PDO 从 MySQL 数据库中获取损坏的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31131517/