即使我使用此代码,也没有任何内容可以显示,
$result=mysqli_query($con,$sql);
$indexCourses=[];
$listCourses=array();
$listCourses=$result->fetch_all(MYSQLI_ASSOC);
mysqli_close($con);
echo json_encode($listCourses,TRUE);
print_r()的数组输出为:
Array ( [0] => Array ( [id] => 6 [nom] => Marathon de Marrakech [date] =>
28/01/2018 ) [1] => Array ( [id] => 7 [nom] => Semi marathon Meknès [date]
=> 18/02/2018 ) [2] => Array ( [id] => 8 [nom] => 10 km de Casablanca
(ENSEM) [date] => 25/02/2018 ) )
任何帮助,请
答案 0 :(得分:0)
根据您的数据判断json_encode在尝试编码非UTF8字符时可能会抛出并出错。您可以使用json_last_error_msg功能检查是否发生了错误。另外,请阅读如何使用json_encode函数(特别是第二个参数规范),因为我认为你不需要在你的情况下将第二个参数传递给函数。
您的问题的解决方案可能非常简单 - 在创建mysqli连接时使用UTF8编码,这将强制所有结果也以UTF8返回,在这种情况下json_encode将不会出现问题。
mysqli_set_charset($connection,"utf8");
(摘自https://www.w3schools.com/php/func_mysqli_set_charset.asp)