1 回答

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個贊
在第一個選項(xiàng)卡代碼中循環(huán)遍歷 $results 時,您退出循環(huán)并為 $res 分配一個值,該值在第二個選項(xiàng)卡代碼中不會更改。這就是為什么第二個選項(xiàng)卡中只排除一個索引的原因。要解決此問題,請將 $post 與 $results 中存儲的所有值進(jìn)行比較。
如果您的 $results 數(shù)組包含所有已回答的測驗(yàn),您可以在循環(huán) $posts 時使用 in_array 檢查 $results 是否包含 $post 的值。這是示例代碼:
if (!in_array($post, $results)) { //search in $results for $post
// Show the Quiz since it has not been answered
}
我建議創(chuàng)建一個新數(shù)組,在第一個選項(xiàng)卡的循環(huán)中保存 $res 的每個新值,并使用上面相同的邏輯。
第一個選項(xiàng)卡的新代碼
<?php $newArray = array();
foreach($results as $result):
$res = $result['activity'];
array_push($newArray, $res) ?>
<h4><?php echo $result['activity']; ?></h4>
<?php endforeach; ?>
第二個選項(xiàng)卡的新代碼
<?php foreach($posts as $post):
$pos = $post['activity'];
if (!in_array($pos, $newArray)): ?>
<a href="<?php echo base_url();?>activity/start/<?php echo $post['id'];?>/<?php echo $id;?>">
<?php echo $post['activity']; ?>
</a>
<?php endif; ?>
<?php endforeach; ?>
- 1 回答
- 0 關(guān)注
- 133 瀏覽
添加回答
舉報(bào)