我有一个包含在选择框中的所有选项的数组:
Array
(
[2836] => 4 16:40:00
[2835] => 3 13:20:00
)
第二个数组选项在数据库中有一个特定的标志:
Array
(
[2835] => 3 13:20:00
)
如何比较这两个数组以生成一个选择列表,该列表将特定类应用于数组中找到的匹配项?我很乐意帮助谢谢!
我的选择列表的视图,它接收第一个数组:
<select>
<?php foreach ($courses as $key=>$course): ?>
<option id="<?php echo $key;?>">
<?php echo $course; ?>
</option>
<?php endforeach;?>
</select>
答案 0 :(得分:1)
您可以使用array_intersect查找两个阵列常用的值。然后在foreach循环中,您可以检查当前键(或值)是否来自匹配数组。
$matches = array_intersect($arr1, $arr2);
在视图文件中:
<select>
<?php foreach ($courses as $key=>$course): ?>
<option id="<?php echo $key;?>" class="<?php echo isset($matches[$key]) ? 'match' : '' ?>">
<?php echo $course; ?>
</option>
<?php endforeach;?>
</select>