Có thể bạn đang mã hóa một tập dữ liệu rất lớn. Bạn có thể mã hóa từng hàng, từng hàng một thay vì mã hóa nó trong một thao tác lớn.
<?php
require('../../admin/db_login.php');
$db=mysql_connect($host, $username, $password) or die('Could not connect');
mysql_select_db($db_name, $db) or die('');
$result = mysql_query("SELECT * from listinfo") or die('Could not query');
if(mysql_num_rows($result)){
echo '{"testData":[';
$first = true;
$row=mysql_fetch_assoc($result);
while($row=mysql_fetch_row($result)){
// cast results to specific data types
if($first) {
$first = false;
} else {
echo ',';
}
echo json_encode($row);
}
echo ']}';
} else {
echo '[]';
}
mysql_close($db);
Bằng cách đó, mỗi cuộc gọi đến json_encode()
chỉ mã hóa một mảng nhỏ thay vì một mảng lớn. Kết quả cuối cùng là như nhau. Đây là giải pháp IMO sẽ sử dụng ít bộ nhớ hơn.