【问题标题】:Getting Week Day via with getdate()通过 getdate() 获取工作日
【发布时间】:2016-02-10 15:06:11
【问题描述】:

所以我想写一个简单的程序 & 我想检查 if 条件是一周中的哪一天。我不太确定如何正确处理。

我的日期函数是这样的

date_default_timezone_set('Etc/GMT+6'); 
$info = getdate();
$hour = $info['hours'];
$day= $info['wday'];

我正在尝试提高“工作日”值。但是,我没有做对。我读 wday 将值存储为整数(星期日 = 0),

所以当我编写这样的代码时,它并不能正常工作。

<?php 
date_default_timezone_set('Etc/GMT+6'); 
$info = getdate();
$hour = $info['hours'];
$day= $info['wday'];

if(isset($_POST['submit1'])) {
    $ehsir=$_POST['ehtesham'];


    if ($day=='3') 
        {
            if ($hour>=8 && $hour<=11 || $hour>=18 && $hour<=20) {
                echo '<div class="btn btn-success">Ehtesham sir is available </div>';
                }

        }
        else {
            echo '<div class="btn btn-danger"> Ehtesham Sir Is Not available </div>';}

}

?>

【问题讨论】:

  • 如果代码未按预期运行 - $day 在运行时设置为什么?您是否检查过$hour 的设置是否正确? (另外 - 如果$day == 3 为真,但以下如果不是,则不会回显任何内容)

标签: php weekday


【解决方案1】:

一个很好的方法是使用DateTime 类。

$now = new DateTime('now');

$day = $now->format('w'); //    0 (for Sunday) through 6 (for Saturday)
$hour = $now->format('H');

请参阅DateTime 的文档。

【讨论】:

    猜你喜欢
    • 2013-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2018-09-08
    相关资源
    最近更新 更多