作者dinos (用血汗灌溉顶天巨木)
看板PHP
标题Re: [请益] 在switch的case是否可用RE来判断?
时间Mon Jun 19 14:28:47 2006
※ 引述《piligo (pili)》之铭言:
: : 请问当我用switch来做判断规则时,在case的字串可否用RE这种语法来做判断呢?
: : 譬如底下当$a1的变数=2005/03/06可以符合外,有办法不用再写第二个case就能让
: : 2005/03/06/01或2005/03/06/02也去跑2005/03/06这个case,这有办法达成吗?还是
: : 一定要用三个case写呢?
: : switch ($a1) {
: : case "2005/03/06"
: : echo "Hi";
: : break;
: : }
: → piligo:RE = Regular Expressions 06/19 13:24
: 推 ago1414:switch 他是看你break 下在哪边 来判断结束 06/19 13:27
: 推 ago1414:不然你用 if($a=='' || XX || XX){ .......} 06/19 13:32
: 可是我的条件有超过20个要判断,而主要判断是以2005/01/01这种格式做判断,那因为
: 有部份需要在延伸日期流水号,也就是在日期後面加编号2005/01/01/01 2005/01/01/02
: ,想说能精简就精简,减少它的负担。
: 我整个设计是这样的
: 客户一开始输入的网址www.abc.com/index.php?a1=2005/01,当case符合就跑内容,
: 那那容就是 include("www.xyz.com/$a1/index.htm"),而有超过20组的日期,那另外
: 有些日期会像我上面那一段讲的,後面还要加上流水号,那我的用意是想说有流水号的
: 也要独立写一个case来判断还是可以透过RE来加入万用字元或判断式等等的规则。
: 谢谢
靠 if 吧
if(preg_match($RE_rule,$_GET['a1'])) {
$data=substr(....);
}
else if(....) {
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.158.10