该代码是否正确,根据天数打印时间 [英] Is this code is correct to print time according to days

查看:43
本文介绍了该代码是否正确,根据天数打印时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请任何人检查并更正.

<?php
    $dt='2017-08-30';
    $dt1 = strtotime($dt);
    $dt2 = date("l", $dt1);
    $dt3 = strtolower($dt2);
    if(($dt3 == "Monday" ))
        {
            echo "6:00-8:00";
        } 
    else if(($dt3 == "tuesday" ))
        {
            echo "8:00-10:00";
        } 
    else    if(($dt3 == "wednesday" ))
        {
             echo "10:00-12:00";
        } 
    else    if(($dt3 == "thursday" ))
        {
             echo "12:00-14:00";
        } 
    else    if(($dt3 == "friday" ))
        {
            echo "14:00-16:00";
        } 
    else    if(($dt3 == "saturday" ))
        {
            echo "14:00-16:00";
        }
    else    if(($dt3 == "sunday" ))
        {
            echo "16:00-18:00";
        }
?>

如果

星期一打印6-8

星期二打印8-10

星期三打印10-12

Wednesday print 10-12

星期四打印12-14

Thursday print 12-14

星期五打印14-16

Friday print 14-16

星期六打印16-18

Saturday print 16-18

星期天打印16-18

Sunday print 16-18

推荐答案

不要使用一系列if语句,而要使用查找数组.这样会更易于阅读和管理.

Don't use a battery of if statements, use a lookup array. It will be easier to read and manage.

代码:( 演示)

$lookup=['Monday'=>'6:00-8:00',
         'Tueday'=>'8:00-10:00',
         'Wednesday'=>'10:00-12:00',
         'Thursday'=>'12:00-14:00',
         'Friday'=>'14:00-16:00',
         'Saturday'=>'14:00-16:00',
         'Sunday'=>'16:00-18:00'];
if(function_exists('date_default_timezone_set')){
    date_default_timezone_set('Asia/Calcutta');  // whatever timezone you wish
}
$day=date("l");
    //$dt='2017-08-30';
    //$day=date("l",strtotime($dt));
echo $day,' ',$lookup[$day];

或使用 DateTime ...

$TZ=new DateTimeZone('Asia/Kolkata');  // whatever timezone you wish
$now=new DateTime('NOW',$TZ);
$day=$now->format('l');
echo $day,' ',$lookup[$day];

输出:

Wednesday 10:00-12:00

这篇关于该代码是否正确,根据天数打印时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆