我在 MySQL 中有下表
|Column1|Column2|Column3|
-------------------------
|Data1 |Data2 |Data3 |
|Data4 |Data5 |Data6 |
|Data7 |Data8 |Data9 |
|Data10 |Data11 |Data12 |
-------------------------
现在,在此表中,我使用 PHP 获取列名称以及所有 12 个单元格
这是我正在处理的循环。
for($i=0, $j=0; $i<$loopMax; $i++,$j++){//i run rows, j run columns
if($j>=$column_count){
$j=0;
}
$columns[$i][$j] = mysql_result($query_exec, $j, 'COLUMN_NAME');
$response[$i][$columns[$i][$j]] = @$result[$j];
}
print_r($response);
$maxLoop 是列数乘以行数的值。这样我就可以获得需要获取的单元格总数。我必须以 json 字符串形式发送此响应,因此获取此单元格值及其各自的列名称非常重要,因为这将帮助 UI 端识别在何处放置哪个值。 表没有主键。
我想要做的是,获取每个单元格值及其所属的列名并将其放入数组中。并将该数组作为杰森字符串发送。
最佳答案
如果您的服务器上安装了 MySQL
版本 5.7.8
及更高版本,那么您可以在查询中使用 native JSON
函数.
SELECT JSON_OBJECT('Column1', `Column1`, 'Column2', `Column2`, 'Column3', `Column3`);
结果会是这样的......
{ "Column1":"Data1", "Column2":"Data2", "Column3":"Data3" },
...
...
{ "Column1":"Data10", "Column2":"Data11", "Column3":"Data12" }
关于php - 使用两个循环遍历 mysql 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48012496/