在数据库表中有多个与客户相关的条目。每个条目都有time_1,time_2,time_3,time_4,time_5和time_6字段。我循环使用条目并使用它来组合这些时间来创建一天的循环周期:
while($row=mysql_fetch_assoc($script_check))
{
$prerounds = array_filter($row);
$rounds = array_unique(array_merge($prerounds));
}
然而,如果一个条目设置了1-4次并且第二个条目设置了1-3次,则第四次将被完全删除,因此只有1-3次被放入数组中。当一些空白时,如何组合这些字段而不丢失数据?到目前为止,这个策略是剥离所有空白的$ row然后将它们合并在一起以创建与该客户当天相关的一组轮次。感谢。
答案 0 :(得分:1)
OP要求:
基本上,你的主要问题是你在每次迭代时重新初始化$rounds
,你没有将任何现有数组与新数组合并。
$rounds = array();
while($row = $pdo->fetch(PDO::FETCH_ASSOC))
{
$rounds = array_merge($rounds, array_unique(array_filter($row)));
}
Hmz ...除了mysql_*
被弃用之外(这就是我在我的代码片段中使用PDO的原因),你应该真正检查你的逻辑...也许一个体面的查询可能更合适,或者一套简单的if
的。它的速度甚至可能更快