gpt4 book ai didi

php - 嵌套的 foreach 循环,使用 php 和 laravel

转载 作者:太空宇宙 更新时间:2023-11-03 10:45:33 24 4
gpt4 key购买 nike

我的嵌套 foreach 循环有问题,我的 Controller 代码在我的数据库中的单独表中检索两列的值。

我想要的是将每个值与另一个表进行比较,反之亦然,...

table1             table2
some column1 some column2
a b
b b
c c

我想要的输出是,如果两列的值比较,如果为真则输出“匹配”,否则输出“不匹配”。

这里尝试,但它不起作用,只比较了两个表列中的最后一项。我想我缺少嵌套循环。

///片段///

控制者

$temp_answers = array();
$answers = array();

$temp_answers = Tempanswer::where('subject_id', $subject_id)
->where('student_id', $student_id)
->lists('temp_answer');

$answers = Question::where('subject_slug', $subject->slug)
->lists('letteranswer');

foreach ($temp_answers as $temp_answer) {

foreach ($answers as $answer) {
if($answer == $temp_answer){
$flag = 'match';
}else
$flag = 'mismatch';
}
echo $flag.' ';

}

最佳答案

CMIIW。您要检查 table1 和 table2 是否匹配。因此,如果它不匹配,您将收到消息“不匹配”

假设1:如果将table1中的每条数据与table2中的所有数据进行比较。

foreach ($temp_answers as $temp_answer) {

foreach ($answers as $answer) {
if($answer == $temp_answer){
$flag = 'match';
}else {
$flag = 'mismatch';
break;
}
}

if($flag == 'mismatch'){
break;
}
}

echo $flag;

假设 2:每个表按每一行进行比较。我的意思是 row1 table1 与 row1 table2 进行比较,而不是 row2 table1 与 row2 table2 进行比较。

$flag='';
foreach ($temp_answers as $key1=>$temp_answer) {
foreach ($answers as $key2=>$answer) {
if($key1 == $key2){
if($answer == $temp_answer){
$flag = $flag.'match ';
}else {
$flag = $flag.'mismatch ';
}
break;
}
}
}
echo $flag;

关于php - 嵌套的 foreach 循环,使用 php 和 laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32287577/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com