在PHP中根据数据库列的日名称和频率计算日期

在PHP中根据数据库列的日名称和频率计算日期,php,mysql,Php,Mysql,我有一个表,显示客户的收款日期。表中有七列和另一列,分别给出了采集频率和采集计划开始的日期,如下所示: |------------|------------|-------------|---------------|--------------|------------|--------------|------------|-----------| | start | col_monday | col_tuesday | col_wednesday | col_thursday |

我有一个表,显示客户的收款日期。表中有七列和另一列,分别给出了采集频率和采集计划开始的日期,如下所示:

|------------|------------|-------------|---------------|--------------|------------|--------------|------------|-----------|
|    start   | col_monday | col_tuesday | col_wednesday | col_thursday | col_friday | col_saturday | col_sunday | frequency |
|------------|------------|-------------|---------------|--------------|------------|--------------|------------|-----------|
| 2014-08-25 |     AM     |      AM     |       -       |      PM      |     PM     |       -      |     AM     |   Weekly  |
但是,现在我想在一个列表中显示这一点,客户将看到类似这样的内容:

|------------|------------|-------------|---------------|--------------|------------|--------------|------------|-----------|
|    start   | col_monday | col_tuesday | col_wednesday | col_thursday | col_friday | col_saturday | col_sunday | frequency |
|------------|------------|-------------|---------------|--------------|------------|--------------|------------|-----------|
| 2014-08-25 |     AM     |      AM     |       -       |      PM      |     PM     |       -      |     AM     |   Weekly  |
2014年8月25日星期一-上午收藏
2014年8月26日星期二-上午收藏
2014年8月27日星期三-无收藏
2014年8月28日星期四-下午收藏
2014年8月29日星期五-下午收藏
2014年8月30日星期六-无收藏
2014年8月31日星期日-上午收藏

根据开始日期,这些将进一步更改,具体取决于是每周收集还是每两周收集。因此,如果收款记录是双周的,根据开始日期,它将显示从2014年9月1日开始的一周没有收款

这个问题进一步复杂化,因为从中获取数据的系统非常旧,而且成本不允许更改,这意味着必须在创建数据后完成工作


任何帮助都会非常好。

我将用php编写,像这样试试

我只是写了这个概念而已

$sqlRun=mysql_query('SELECT *,DAYNAME(start) as dayname from tblname');
while($row=mysql_fetch_array($sqlRun)){
$daynameConcat='col_'.$row['dayname'];
    if($row[$daynameConcat]==""){
     echo $row['start'].$row['dayname'].' No Collection ';
    } else {
     echo $row['start'].$row['dayname'].' Collection ';
    }
}