我有这样的数据库:

表:用户

列:第1天,第2天,第3天,第4天,第5天

行:null,1、1、1,null

这是我想做的事情:

if($row['day1'] == null) {
    $totalNullDays = '1' // '1' is for day1
}
if($row['day2'] == null) {
    $totalNullDays = '2' // '2' is for day2
}
etc...


最后,我想要这种格式的东西:

$totalNullDays = '1, 5'; // because day1 and day5 are null.


做这个的最好方式是什么?谢谢。

最佳答案

使用数组,然后将它们与implode()组合。而不是每天重复所有相同的代码,而要使用循环。

$nullDays = array();
for ($i = 1; $i <= 5; $i++) {
    if ($row['day' . $i] === null) {
        $nullDays[] = $i;
    }
}
$totalNullDays = implode(', ', $nullDays);

关于php - 如果不是,则来自数据库的数字列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43551001/

10-12 13:26