我的mysql数据库中有大量数据(500行),当我试图获取所有数据时,这些数据并不是来自数据库。
工作代码
<?php
include '../db/db.php';
$categoriesDataQuery = mysqli_query($conn, "SELECT * FROM subcategories LIMIT 268");
while ($row = mysqli_fetch_assoc ($categoriesDataQuery)) {
$categoryData [] = $row;
}
$categoryNewData = $categoryData;
print (json_encode ($categoryNewData)) ;
mysqli_close ($conn);
?>
非工作代码
<?php
include '../db/db.php';
$categoriesDataQuery = mysqli_query($conn, "SELECT * FROM subcategories");
while ($row = mysqli_fetch_assoc ($categoriesDataQuery)) {
$categoryData [] = $row;
}
$categoryNewData = $categoryData;
print (json_encode ($categoryNewData)) ;
mysqli_close ($conn);
?>
可能mysql数据库在用户选择大数据的时候有一些限制?!
谁见过这个?
1条答案
按热度按时间agyaoht71#
问题不在于sql查询或试图编码的数据量。出于某种原因,
json_encode
当遇到无效字符时,可以返回空字符串而不是抛出错误。必须确保sql连接的字符编码与数据库表的编码匹配。例如,如果您在表上使用utf-8编码,则需要调用以下函数在php客户端上强制使用相同的编码:
有关更多信息,请参阅php文档。