这应该工作:
function recordSetToJson($mysql_result) { $rs = array(); while($rs[] = mysql_fetch_assoc($mysql_result)) { // you don´t really need to do anything here. } return json_enpre($rs);}如果需要处理结果集,则可以使用以下更复杂的版本,该版本可让您添加将在每条记录上调用的回调函数,并且必须返回已处理的记录:
function recordSetToJson($mysql_result, $processing_function = null) { $rs = array(); while($record = mysql_fetch_assoc($mysql_result)) { if(is_callable($processing_function)){ // callback function received. Pass the record through it. $processed = $processing_function($record); // if null was returned, skip that record from the json. if(!is_null($processed)) $rs[] = $processed; } else { // no callback function, use the record as is. $rs[] = $record; } } return json_enpre($rs);}像这样使用它:
$json = recordSetToJson($results, function($record){ // some change you want to make to every record: $record["username"] = strtoupper($record["username"]); return $record; });


