PHP - 如果语句在节假日显示特殊文本

我试图找到一种方法来在PHP中生成一个特殊的文本,这取决于它是哪个假期。我正在尝试if语句和切换,但我无法弄清楚它的逻辑。您能建议如何做到这一点吗?目标是有两行文本:


今天是星期四。


胖子星期四快乐!


如果某一天没有假期,则只应显示第一行文本。


setlocale(LC_ALL, "sv_SE");

$dag = strftime('%A', time());

$datum = strftime('%D', time());


    {

    echo "Idag är det ".$dag."<br>";

    }


switch ($datum)

{

    case ($datum = '01/01/2020'):

        echo "Gott Nytt År";

    break;


    case ($datum = '01/06/2020'):

        echo "Glad Trettondedag Jul";

    break;        


    case ($datum = '02/20/2020'):

        echo "Happy Fat Thursday!";

    break;    


    default:

        echo ' ';

        break;

}


慕田峪4524236
浏览 80回答 1
1回答

蝴蝶不菲

试试这个我不确定为什么你在 every 中使用表达式,但你已经将要检查的变量设置为 参数,所以你只需要输入值作为大小写。caseswitch我还删除了第一个回声,因为我不知道为什么会在那里,我已经把它移到了捕获中,这意味着如果没有触发其他回声,默认值就会触发。defaultcase此外,从@Cadu德卡斯特罗阿尔维斯的评论开始,我改为:$datum$datum&nbsp;=&nbsp;strftime('%m/%d/%Y',&nbsp;time());正如您使用的先前模式将返回两位数的年份,而不是您检查的四位数。您可以在此处阅读有关切换的更多信息。setlocale(LC_ALL, "sv_SE");$dag = strftime('%A', time());$datum = strftime('%m/%d/%Y', time());switch ($datum) {&nbsp; &nbsp; case '01/01/2020':&nbsp; &nbsp; &nbsp; &nbsp; echo "Gott Nytt År";&nbsp; &nbsp; break;&nbsp; &nbsp; case '01/06/2020':&nbsp; &nbsp; &nbsp; &nbsp; echo "Glad Trettondedag Jul";&nbsp; &nbsp; break;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; case '02/20/2020':&nbsp; &nbsp; &nbsp; &nbsp; echo "Happy Fat Thursday!";&nbsp; &nbsp; break;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; default:&nbsp; &nbsp; &nbsp; &nbsp; echo "Idag är det ".$dag."<br>";&nbsp; &nbsp; &nbsp; &nbsp; break;}
打开App,查看更多内容
随时随地看视频慕课网APP