我有一个PHP脚本连接到MySQL数据库并以JSON格式返回一些数据,但希腊语中返回的数据显示为问号。
我已经检查了this问题但对我没有用,或者我做错了。 这有什么问题?
<?php
header('content-type: text/html; charset=UTF-8');
// Create connection
$con=mysqli_connect("localhost","db_user","db_pass","db_name");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
if( function_exists('mysql_set_charset') ){
mysqli_set_charset('utf8', $con);
}else{
mysqli_query("SET NAMES 'utf8'", $con);
}
$sql = "SELECT * FROM Locations";
if ($result = mysqli_query($con, $sql))
{
$resultArray = array();
$tempArray = array();
while($row = $result->fetch_object())
{
$tempArray = $row;
array_push($resultArray, $tempArray);
}
echo json_encode($resultArray);
}
mysqli_close($con);
?>
答案 0 :(得分:1)
mysqli_set_charset上的语法不正确。 代码的正确部分如下:
if( function_exists('mysql_set_charset') ){
mysqli_set_charset($con, 'utf8');
}else{
mysqli_query($con, "SET NAMES 'utf8'");
}