课表设计 唠叨请进

haihaiff 2006-09-16 03:33:19
表格如下
f1 | f2 | f3 | f4 | f5 | f6
--------------+----+----+----+------------+------------
GA01 | 03 | 1 | 06 | 1201 | 2584
GA01 | 07 | 1 | 06 | 1201 | 2584
GA01 | 08 | 1 | 06 | 1201 | 2584
GA01 | 09 | 1 | 06 | 1201 | 2584
GA01 | 10 | 1 | 06 | 1201 | 2584
GA01 | 11 | 1 | 06 | 1201 | 2584
GA01 | 12 | 1 | 06 | 1201 | 2584
GA01 | 13 | 1 | 06 | 1201 | 2584
GA01 | 14 | 1 | 06 | 1201 | 2584
f1 教学班号,f2 周,f3日,f4节,f5 地点
(我是这样处理的:先全部选到一个数组中 :$dArray[班号][地点][日][节][]=周;
然后倒着合并数组. 里边的周、节这些都可能不是连续的数据,数据量也比较大)

foreach($All as $jxbh=>$jxb){
foreach($jxb as $dd=>$sj){
foreach($sj as $ri=>$jiezhou){
foreach($jiezhou as $jie=>$sz){
$cnt=count($sz);
$start=$sz[0];$end=$sz[0];
for($i=1;$i<$cnt;$i++){
$now=$sz[$i];
if($now-1==$end){

$end=$sz[$i];
}
else{
if($start!=$end)
$st=$start."_".$end;
else $st=$start;
// 就是这个地方有额外问题,$start 和 $end 的值 不对 ....
$OUT[$jxbh][$dd][$ri][$jie][]=$st;

$start=$sz[$i];
$end = $start;
}
}
}
}
}
}


...全文
146 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
iasky 2006-09-16
  • 打赏
  • 举报
回复
那你1-15周怎么办?不是混乱了嘛
haihaiff 2006-09-16
  • 打赏
  • 举报
回复
怎么将这个数据按照 班号组织成一个比较直观的字符串。 比如 : 1201(1-2周周一1-2节) 1301(1-3周周三 3-5节)
yuhe113 2006-09-16
  • 打赏
  • 举报
回复
你的目标

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧