如何检查结果数组元素是否存在于另一个结果数组中

约瑟夫

我的程序中有以下代码:

<?php

session_start();
$_SESSION['user_id']=201102887;
$con = mysqli_connect('localhost', 'root', '');
if(!$con)
{
   die("not ok");
}
mysqli_select_db($con,"uoh");
$q = "SELECT * FROM courses
      INNER JOIN  transfer_student_courses
      ON          transfer_student_courses.course_number = courses.course_number
      INNER JOIN  transfered_courses
      ON          transfer_student_courses.sn = transfered_courses.sn 
      AND         transfer_student_courses.student_ID = " . $_SESSION['user_id'];
$result = mysqli_query($con , $q);
if($result){
   echo "<table>";
   echo "<tr>";
   echo "<th>equivalent</th>";
   echo "</tr>";
   while($row = mysqli_fetch_array($result))
   {
      echo "<tr>";
      echo "<td>" . $row["equivalent"]. "</td>";
      echo "</tr>";
   } 
   echo "</table>";
}

mysqli_select_db($con,"uoh");
$q = "SELECT * FROM courses 
      LEFT JOIN  degree_plan
      ON         degree_plan.course_number = courses.course_number 
      LEFT JOIN  student_record
      ON         courses.course_number = student_record.course_number 
      AND        student_record.id = ". $_SESSION['user_id']."
      WHERE      degree_plan.major = 'COE'
      ORDER BY   term_no";

$result = mysqli_query($con , $q );
if($result){
   echo "<table>";
   echo "<tr>";
   echo "<th>course</th>";
   echo "</tr>";

   while($row = mysqli_fetch_array($result))
   {
      echo "<tr>";
      echo "<td>" . $row["code"]. "</td>";
      echo "</tr>";
   }
}
echo "</table>";

?>

我在此代码中有两个查询,每个查询都为我提供了课程列表。如果一门课程出现在第一个列表中,我不希望它出现在第二个列表中。

如果您在下面看到此代码的输出,则第一个查询给我MATH 101,第二个查询也给我MATH 101

我不想MATH 101出现在第二门课程列表中,因为它也出现在第一门课程列表中。

我该如何用PHP语言编写一个函数来做到这一点?

输出:

同等水平的
MATH 101课程
PHYS 101 
CHEM 101 
PE 101 
IAS 101 
MATH 101 
ENGL 101


拉吉普·保罗(Rajdeep Paul)

首先,将所有equivalent课程存储在一个数组中,例如$equivalent数组。然后在第二个while循环中,使用in_array()函数检查路线是否已经在第一个表格中打印出来。

这里是参考:

因此,您的代码应如下所示:

<?php
    session_start();
    $_SESSION['user_id']=201102887;
    $con = mysqli_connect('localhost', 'root', '');
    if(!$con){
        die("not ok");
    }
    mysqli_select_db($con,"uoh");  
    $q = "SELECT * FROM courses INNER JOIN transfer_student_courses ON 
    transfer_student_courses.course_number=courses.course_number INNER
     JOIN transfered_courses ON transfer_student_courses.sn=transfered_courses.sn 
     AND transfer_student_courses.student_ID = " . $_SESSION['user_id'];
    $result = mysqli_query($con , $q) ;

    $equivalent = array();
    if($result){
        echo "<table>";
        echo "<tr>";
        echo "<th>equivalent</th>";
        echo "</tr>";
        while($row = mysqli_fetch_array($result)){
            $equivalent[] = $row["equivalent"];
            echo "<tr>";
            echo "<td>" . $row["equivalent"]. "</td>";
            echo "</tr>";
        } 
        echo "</table>";
    }

    mysqli_select_db($con,"uoh");  
    $q = "SELECT * FROM courses 
    LEFT JOIN degree_plan ON degree_plan.course_number= courses.course_number 
    LEFT JOIN student_record ON courses.course_number= student_record.course_number 
    AND student_record.id= ". $_SESSION['user_id']."
    WHERE degree_plan.major='COE' ORDER BY term_no";

    $result = mysqli_query($con , $q ) ;
    if($result){
       echo "<table>";
       echo "<tr>";
       echo "<th>course</th>";
       echo "</tr>";

        while($row = mysqli_fetch_array($result)){
            if(in_array($row["code"], $equivalent)){
                continue;
            }
            echo "<tr>";
            echo "<td>" . $row["code"]. "</td>";
            echo "</tr>";
        } 
    }
    echo "</table>";   
?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查一个数组中的元素是否存在于另一个数组中

检查数组的数组元素是否存在于python中的另一个数组中

逐列检查数组中的元素是否存在于另一个数组中

检查数组中的所有元素是否都存在于另一个数组中

雪花。如何检查子数组是否存在于另一个数组中?

检查一个数组中的任何元素是否存在于另一个数组中

检查一个数组的元素是否存在于另一个数组中 - 在某个索引内

如何检查数组中的每个元素以查看它是否存在于另一个数组中,并将第一个数组中的元素替换为其他元素?

如何检查一个元素是否存在于另一个元素在Jquery中?

如何检查一个 XML 元素是否存在于 nodejs 的另一个元素中?

蜂巢:如何检查一个数组中的值是否存在于另一个数组中?

如何检查一个 json 对象数组中的 id 是否存在于另一个 json 对象嵌套数组中?

检查数组值是否存在于另一个包含逗号分隔值的数组值中

检查对象值数组是否存在于另一个数组中,但长度不同

检查所有数组值是否存在于另一个数组值中

如何使用SQL检查一个表中存在的json值数组是否存在于另一个表中?

仅显示存在于另一个数组中的数组元素

如何删除int数组中存在于另一个int数组中的所有元素?

MATLAB 如何检查字符数组的一部分是否存在于另一个字符数组中?

如何通过存在于另一个数组中的元素过滤我的数组

reactjs如何过滤/检查数组中的任何对象是否存在于另一个对象数组中?

检查键是否存在于另一个数组中并从中获取值并推送到另一个数组

高效的方法来检查数组中的项目是否存在于另一个

Javascript检查元组的第一个元素是否存在于元组数组中

jQuery如何检查一组对象是否存在于另一个数组对象中

如何检查值是否存在于另一个熊猫数据框中?

如何检查对象属性是否也存在于另一个对象中?

如何检查可变长度数组中的任何字符串是否存在于另一个字符串中?

检查一个数组列表中的值是否存在于另一个数组列表中