【发布时间】:2013-04-29 17:30:05
【问题描述】:
--让我补充一下。这段代码按原样对我有用。我只是不知道它为什么起作用。--
我想不通。
switch ($_SERVER['QUERY_STRING']) {
case isset($_GET['test0']):
echo "test0<br>";
break;
case isset($_GET['test1']):
echo "test1<br>";
break;
case isset($_GET['test2']):
echo "test2<br>";
break;
case isset($_GET['test3']):
echo "test3<br>";
break;
case isset($_GET['test4']):
echo "test4<br>";
break;
default:
echo "no test<br>";
break;
}
当url为index.php?test0时,显示“test0”。
当url为index.php?test4时,显示“test4”。
当url为index.php?test999时,显示“no test”。
当url为index.php?tes时,显示“未测试”。
当 url 为 index.php? 或 index.php 时,显示“test0”。
这是为什么?条件不满足,不应该显示默认吗?
【问题讨论】:
-
你想做什么?如果
index.php?test0是网址?那么,你对switch有什么回应呢? ...我只是想了解您的问题 -
好吧,它可以满足我的需要。如果我使用 ?test3,它会回显 test3。如果 ? 条件错误,它会回显默认值。我只是不知道当 url 中没有条件时它会触发第一种情况。
-
我尝试了我的代码,它可以工作。不过可能有点激进
标签: php get switch-statement