在 PHP 中查詢一週中的某一天的日期

Habdul Hazeez 2023年1月30日
  1. 在 PHP 中獲取一個數字的星期的日期
  2. 從 PHP 中的日期字串獲取星期幾
在 PHP 中查詢一週中的某一天的日期

本文教你如何使用 PHP 獲取一週中的數字日期。我們的解決方案基於將數字 0 到 6 分配給從週日到週六的工作日。

我們將使用 PHP datestrtotime 函式進行計算。

在 PHP 中獲取一個數字的星期的日期

要獲取數字的日期,我們將從一週中選擇一個初始日期。日期的格式為 yyyy-mm-dd,然後我們選擇 0 到 6 之間的數字。

通過這樣做,我們將知道 PHP 為該數字返回的任何日期都與初始日期在同一周。之後,我們使用 PHP 使用我們選擇的數字和初始日期來獲取日期。

PHP 程式碼將使用以下演算法:

  • 定義初始日期。
  • 選擇 0 到 6 之間的數字。
  • 確保數字介於 0 和 6 之間。
  • 使用 PHP datestrtotime 將我們的數字轉換為一週中的一天。
  • yyyy-mm-dd 格式將星期幾轉換為我們的日期。我們將使用 date() 函式,它的引數是:
    • Y-m-d
    • 步驟 4 中的星期的 Unix 時間戳,減去我們選擇的數字。
    • 我們初始日期的 Unix 時間戳。

下面是這個演算法的實現:

<?php
    $initial_date = '2022-06-22';
    $day = 0;

    if ($day >= 0 and $day <= 6) {
        $day_of_the_week = date('w', strtotime($initial_date));

        $the_date = date('Y-m-d', strtotime(($day - $day_of_the_week). ' day', strtotime($initial_date)));

        echo($the_date);
    } else {
        echo 'You have entered an invalid day value. Check the "$day" variable and try again';
    }
?>

輸出:

2022-06-19

從 PHP 中的日期字串獲取星期幾

當你擁有格式為 yyyy-mm-dd 的日期時,你可以找到它所在的日期,例如星期一或星期日。由於我們已經有了一個日期(來自上一節),我們可以修改我們的程式碼以列印日期名稱。

修改將讓我們從日期開始列印當天的完整文字表示。我們將使用 date() 函式,並將以下內容作為其引數傳遞:

  • 字母 l(字母 el)
  • 我們日期的 Unix 時間戳

以下是修改後的程式碼以及上一個列表中的更改:

<?php
    $the_date = "2022-06-19"; // The date from the previous section
    $name_of_the_day = date('l', strtotime($the_date));
    echo "The date " . $the_date . " falls on a " . $name_of_the_day;
?>

輸出:

The date 2022-06-19 falls on a Sunday
作者: Habdul Hazeez
Habdul Hazeez avatar Habdul Hazeez avatar

Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.

LinkedIn

相關文章 - PHP Date