首页 > 解决方案 > 如何对数组进行分组和挂载选择

问题描述

我真的需要你的帮助!如何对数组结果进行分组并组合选择。

数据库

图像数据库

PHP

<?php

 $rsPA = $mysqli->query("SELECT * FROM provas_agendadas WHERE status = 'A' ");

 foreach ($rsPA as $key => $rsRowPA){
   $dis1[] = explode("," , $rsRowPA['disciplinas']);
 }

 echo '<pre>';print_r($dis1);echo '</pre>';

?>

结果:

Array
(
    [0] => Array
        (
            [0] => EJA-1
        )

    [1] => Array
        (
            [0] => EJA-1
            [1] => EJA-5
            [2] => TTI-1
        )

)

Expilando:从数组的结果中,我只会得到后面的数字-,例如:EJA-1,我只需要1,即学科表的ID。

你想要的最终结果

图像选择

我感谢所有可以帮助我的人。

标签: phparrays

解决方案


您可以执行一个额外的for循环,然后将explode每个元素放在-最后一部分:

<?php

 $rsPA = $mysqli->query("SELECT * FROM provas_agendadas WHERE status = 'A' ");
 foreach ($rsPA as $key => $rsRowPA){
   $temp = explode("," , $rsRowPA['disciplinas']);
   foreach($temp as $elem){
    $number = explode('-',$elem);
    $number = end($number);
    $numbers[] = $number;
   }
 }
 $dis1 = array_count_values($numbers);

 echo '<pre>';print_r($dis1);echo '</pre>';

?>

推荐阅读