我的当前"出勤项目"有问题,所以我有2个阵列。
这是我目前的代码:
text
我希望值(17和19)将黄色背景标记为数据,并且表格不在范围之外。 任何帮助都会受到赞赏..
答案 0 :(得分:1)
你的代码看起来很乱,我不打算用它来修复它,但我会建议解决方案:
第1次 - 运行foreach($ workdays为$ w)并制作标题 第二次运行foreach($ workdays as $ w)并制作像下面这样的表格:
foreach ($workdays as $w) {
if (in_array($w, $tanggale)) //if tanggle is the one with 17 and 19
{
//code
}
else
{
//code
}
}
答案 1 :(得分:0)
您可以做的就是将2个数组合并为1,然后根据您的要求迭代组合数组。 检查以下代码以组合数组
<?php
$working_days = array(3,4,5,6,7,10,11,12,13,14,17,18,19,20,21,24,25,26,27,28);
$present_days = array(17.19);
$combine_attendence_array = array();
foreach($working_days as $day) {
$combine_attendence_array[$day] = 'Absent';
if(in_array($day, $present_days)) {
$combine_attendence_array[$day] = 'Present';
}
}
?>
此代码将创建带有键的组合数组,因为日期和值存在或不存在。
现在您可以根据您的要求进行迭代迭代代码。
foreach($combine_attendence_array as $day => $value){
if($value == 'Present'){ ?>
<td style="background: #FFF000">M</td>
<?php }else{ ?>
<td style="background: #48C9A9">O</td>
<?php } ?>
<?php } ?>
我希望这个答案可以解决你的问题。
答案 2 :(得分:0)
以这种方式做到这一点
<?php
foreach($tanggale as $t){
if(in_array($t,$workdays)){
?>
<td style="background: #FFF000">M</td>
<?php }else{ ?>
<td style="background: #48C9A9">O</td>
<?php } } ?>
</tr>
<?php } ?>
&#13;
答案 3 :(得分:0)
foreach($workdays as $w){
foreach($tanggale as $t){
if($w == $t){
$color = "#FFF000";
$text = "M";
} else {
$color = "#48C9A9";
$text = "O";
}
}
?>
<td style="background: <?php echo $color; ?>"><?php echo $text; ?></td>
<?php }?>