Heim >Backend-Entwicklung >PHP-Tutorial >switch.case语句调用时间参数程序出错求解决。

switch.case语句调用时间参数程序出错求解决。

WBOY
WBOYOriginal
2016-06-23 13:58:571000Durchsuche

switch.....case语句以其高利率和高方便性成为我最常用的选择语句,stristr函数大家都知道吧,将这两个结合起来以当前时间做参数写语句是个不错的想法,调试时遇到问题,求解决:
date_default_timezone_set("Asia/ShangHai");
$h=date(" H:i");
 echo $h;//输出当前时间;
switch($h){
  
case "12:00";//可以取任意时间,这里做调试用,随便取的;
            if ($k="12:00");
        if(stristr($k, $h) != "");
echo “成功”;
break;
case "12:01";
if ($k="12:01");
if(stristr($k, $h) != "");
echo "又成功了";
break;
default:
 echo "失败";
}

?>
调试时屡屡出错,请解答,谢了


回复讨论(解决方案)

date_default_timezone_set("Asia/ShangHai");$h=date(" H:i");echo $h;//输出当前时间;switch($h){  case "12:00";//可以取任意时间,这里做调试用,随便取的;            if ($k == "12:00");        if(stristr($k, $h) != "");echo “成功”;break;case "12:01";if ($k == "12:01");if(stristr($k, $h) != "");echo "又成功了";break;default: echo "失败";}

你 $h=date(" H:i");
时间前面多了一个空格
所以不会进入形如 case "12:01"; 的任何分支,因为没有前导的空格

date_default_timezone_set("Asia/ShangHai");
$h=date(" H:i");
 echo $h;//输出当前时间;
switch($h){
  
case "12:00";//可以取任意时间,这里做调试用,随便取的;
            if ($k =="12:00");
        if(stristr($k, $h) != "");
echo “成功”;
break;
case "12:01";
if ($k =="12:01");
if(stristr($k, $h) != "");
echo "又成功了";
break;
default:
 echo "失败";
}

?>

你 $h=date(" H:i");
时间前面多了一个空格
所以不会进入形如 case "12:01"; 的任何分支,因为没有前导的空格

谢谢,你的回复是正确的,在调试时最怕这个,设计逻辑没问题,最后出现在书写格式上,头疼呀,看来还是基础不牢
呀。。再次感谢高手回复。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn