---
title: "Datum för måndag vecka x"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/104788-datum-för-måndag-vecka-x"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Skarre"
published: "2004-06-02T06:54:05.000Z"
updated: "2005-06-23T21:26:02.000Z"
replies: 4
views: 302
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/104788-datum-för-måndag-vecka-x"
---

# Datum för måndag vecka x

## #1 — Skarre, 2004-06-02T06:54Z

Jag har ett veckonummer, exempelvis 38. Nu vill jag veta vilket datum det är på måndagen den veckan. Hur gör jag?

Tack på förhand!

Permalänk: https://www.webforum.nu/p/104788

## #2 — Patrik81, 2004-06-02T10:37Z

Hade (återigen) inget direkt för mig så skrev ihop en liten funktion som klarade av de småtester jag gjorde. Finns säkert snabbare och effektivare sätta tt göra det på, kanske till och med finns en phpfunktion för det redan, men här är min lösning:

```php
<?php

function getMondayFromWeek($week="")
{
	if (strlen($week) < 1){
		return "ERROR";
	}

	$days = $week * 7;

	$days = $days - 10; // fråga mig inte varför, men utan denna funkar det inte

	$tsFirst = mktime(0,0,0,1,1,date("Y", time()));

	return strtotime("+".$days." day", $tsFirst);
}

echo(date("Y-m-d",getMondayFromWeek(23)));

?>
```

Principen är att man räknar ut hur många dagar som passerat under dessa x veckor. Sedan mha mktime skapas ett timestamp som representerar den första dagen detta året, och sedan med dessa dagar och den startpunkten, använder man strtotime och plussar på så många dagar till startdatumet, och får fram en ny timestamp som pekar på första måndagen i den veckan.
Alla veckonummer som jag slängde på den klarade den men eftersom jag måste subrahera med 10 och jag inte vet varför, så känns det som att den här funktionen inte är helt... klar för bruk på en produktionsserver... skall testa lite mer, någon annan får gärna komma med åsikter och tankar eller förbättra den.

MVH Patrik

Permalänk: https://www.webforum.nu/p/1360111

## #3 — prey, 2005-06-23T12:34Z

Men antalet dagar stämmer väl inte? Det är ju inte så att 1 januari alltid inträffar på en måndag

Permalänk: https://www.webforum.nu/p/1633466

## #4 — aasah, 2005-06-23T21:21Z

Även bortsett ifrån preys vettiga invändning, så misstror jag funktionen. Vad händer eg för vecka 1? Då är ju $days negativ! 

Skarre - jag tror att du måste ha något referensdatum som du VET var en måndag, som du kan räkna ifrån. Eller kolla här:
<http://www.a-kok.com/php/datumundervecka.php>
(Såg det i en annan tråd.)

Permalänk: https://www.webforum.nu/p/1633644

## #5 — K@llen, 2005-06-23T21:26Z

Och denna tråd är över 1 år gammal. Låt gamla trådar vila i frid.

Permalänk: https://www.webforum.nu/p/1633648

---

Tråden på webben: https://www.webforum.nu/amne/php/104788-datum-för-måndag-vecka-x
