在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 ';
}
}