doumanju2533 2015-11-19 14:31
浏览 122

比较两个数组并检索第二个数组的值

array1 = array();

array2 = array();

Both arrays have values that come from the database;

Array2 contains a list of training, while array1 contains list of training already taken.

I want to compare array1 to array2 and retrieve the list of training that is not in the array1

Here is the snippet of the code i'm currently doing:

$query2 = "SELECT trainingName, rank FROM crewtraininglist WHERE crewId = '$crewId'";
$result2 = mysqli_query($conn, $query2);

$array = array();
while($row = mysqli_fetch_assoc($result2)) 
{        
    $rank = $row['rank'];
    $training = $row['trainingName'];
    $array[] = $row['trainingName'];
    echo "<li>$training</li>";
    //echo "<option value='{$row['name']}'>{$row['name']}</option>";
}

$array2 = array();

$query3 = "SELECT `trainingName`, `rank` FROM `traininglist` WHERE rank LIKE '%$rank%'";
$result3 = mysqli_query($conn, $query3);
while($row = mysqli_fetch_assoc($result3)) 
{
    $array2[]=$row['trainingName'];        
}

$array3 = array_diff($array,$array2);
print_r ($array3);

the output of array 1 is:

Array ( 
    [0] => License + COC & Endrs. 
    [1] => Basic Training + COP 
)

Output of Array2 is:

Array ( 
    [0] => License + COC & Endrs. 
    [1] => Basic Training + COP 
    [2] => Personal Safety & Social Responsibility 
    [3] => Proficiency in Survival Craft & Rescue Boat (PSCRB) + COP 
    [4] => Advance Training in Firefighting (AFF) + COP 
    [5] => Medical Emergency First Aid (MEFA) + COP 
    [6] => Medical Care (MECA) + COP [7] => Radar Observing & Ploting Courses (ROC) 
    [8] => Operational Use of Automatic Radar Ploting Aids (ARPA) 
    [9] => Radar Simulator Course (RSC) 
    [10] => Ship Simulator & Bridge Team Work (SSBT) w/BRM 
)
  • 写回答

1条回答 默认 最新

  • duanpanzhu2910 2015-11-19 14:34
    关注

    use array_diff(),

    $array1 = array()// from database
    $array2 = array()// from database
    
    $array3 = array_diff($array2,$array1);
    

    See this for more info.

    评论

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助