【问题标题】:how i can Explode Group_Concat in foreach我如何在 foreach 中爆炸 Group_Concat
【发布时间】:2017-12-05 17:26:18
【问题描述】:

查询 MySQL 此处查询以获取所有用户的结果 Group_concat

$result = $con->prepare("SELECT
    results.StuID,
    subjects_d.SubjectID,
    exams.ID,
    GROUP_CONCAT(results.ExamID,',',results.Exam1,',',results.Exam2,',',results.Exam3 ORDER BY results.ExamID  ASC) AS data
FROM
    results
LEFT JOIN
    users
ON 
    users.UID = results.StuID
LEFT JOIN
    subjects_d
ON
    subjects_d.SubID = results.Sub_ID
LEFT JOIN
    exams
ON 
    exams.ID = results.ExamID
WHERE 
    subjects_d.C_ID = 3
AND 
    subjects_d.SubjectID = 4
GROUP BY results.StuID");
$result->execute(array($classid, $subjectid));
$results = $result->fetchAll();

这是 mysql 的结果

PHP 代码

<?php foreach($results as $result) { ?>
    <?php echo '<pre>';print_r($result)?>
<?php } ?>

print_r

Array
(
    [StuID] => 70
    [0] => 70
    [SubjectID] => 4
    [1] => 4
    [ID] => 1
    [2] => 1
    [data] => 1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0
    [3] => 1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0
)

现在我如何在 foreach 循环中分解这个数据数组 谢谢

【问题讨论】:

    标签: php html mysql


    【解决方案1】:

    在foreach循环中用逗号作为分隔符来分解数据字符串。

    foreach($results as $result) {
        // explode with comma 
        $data_array = explode(',',$result['data']);
     } 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-21
      • 2015-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-20
      相关资源
      最近更新 更多