1#楼 |
|
|
回复人:Miyahoo |
注册时间:2004-04-04 |
主题/回复:39/255 |
积分:1210 |
等级:★★★☆(七级) |
称号:论坛贤士 |
|
|
|
1#楼 发表于2005-04-19 21:30:46
评分:1
|
|
|
2#楼 |
|
|
回复人:一起PHP |
注册时间:2004-02-27 |
主题/回复:247/1521 |
积分:4649 |
等级:★★★★★☆(十一级) |
称号:论坛圣人 |
|
|
|
2#楼 发表于2005-04-19 22:03:11
评分:1
|
|
可以这么办
打个比方吧, 6-20 11-78 这两个区域,用变量表示就是$a1-$a2 $b1-$b2
这两个区域,比较
----------------------------
if($a1>$b1){
if($a1>$b2){
echo "交集为空!";
}else{
$start=$a1;
$end=min($a2,$b2);
}
}else{
if($a2<b1){
echo "交集为空";
}else{
$start=$b1;
$end=min($b2,$a2);
}
echo $a1."--".$a2."和".$b1."--".$b2."的交集是:".$start."--".$end;
}
}
--------------------------------
上面是说了两个整数段,分别是$a1-$a2,$b1-$b2两个段
如果换到了数组中,也是一样,无非是$a1可能变成了$a[1],比较的值可能不再是正数的大小而是时间的先后,内容变了,道理没有变。就用if语句就能比较出来有没有交集。 |
|
3#楼 |
|
|
回复人:Miyahoo |
注册时间:2004-04-04 |
主题/回复:39/255 |
积分:1210 |
等级:★★★☆(七级) |
称号:论坛贤士 |
|
|
|
3#楼 发表于2005-04-21 19:33:06
评分:♂
|
|
|
4#楼 |
|
|
回复人:含泪的射手 |
注册时间:2005-04-11 |
主题/回复:22/37 |
积分:553 |
等级:★★★(六级) |
称号:声名鹊起 |
|
|
|
4#楼 发表于2005-10-31 20:40:17
评分:×
|
|
取交集$arr3=array_intersect($arr1,$arr2);
取合集$arr3=array_merge($arr1,$arr2); |
|