1. ホーム
  2. php

[解決済み] 日付から週番号を取得 PHP

2023-05-21 22:50:36

質問

日付を指定して、その週番号を計算したい。

今のところ、以下のような感じです。42となるべきところを24と返しています。

<?php
$ddate = "2012-10-18";
$duedt = explode("-",$ddate);
$date = mktime(0, 0, 0, $duedt[2], $duedt[1],$duedt[0]);
$week = (int)date('W', $date);
echo "Weeknummer: ".$week;
?>

桁が逆なのは間違いで偶然なのでしょうか?それとももう少しでしょうか?

どのように解決するのですか?

今日、PHPの DateTime オブジェクトを使うのがよいでしょう。

<?php
$ddate = "2012-10-18";
$date = new DateTime($ddate);
$week = $date->format("W");
echo "Weeknummer: $week";


それは mktime() では、このようになります。

mktime(hour, minute, second, month, day, year);

したがって、あなたの注文は間違っているのです。

<?php
$ddate = "2012-10-18";
$duedt = explode("-", $ddate);
$date  = mktime(0, 0, 0, $duedt[1], $duedt[2], $duedt[0]);
$week  = (int)date('W', $date);
echo "Weeknummer: " . $week;
?>