10

I have a date given as a string. And I would like to get the first monday after this given date, again as a string.

$myDate = "2014-08-24"; // date given in Y-m-d
$nextMonday = ??? // how to get the next monday after $myDate?

This sounds like a question that was solved before, like PHP get next occurrence of Monday from a certain date (with time) or When a date is given how to get the date of Monday of that week in php. But it actually is a different problem, because I am running into a lot of conversion issues and a little bit confused how to solve this.

3
  • Could you show us your code, and what exactly doesn't work? Commented Aug 19, 2014 at 9:05
  • 1
    “But it actually is a different problem, because I am running into a lot of conversion issues” – you neglected to describe what those issues actually are. Commented Aug 19, 2014 at 9:09
  • not true, your first link solve it correctly. Commented Aug 19, 2014 at 9:10

2 Answers 2

19

you can use this

<?php
$myDate = "2014-08-27";
$next_monday = date('Y-m-d', strtotime("next monday", strtotime($myDate)));
echo $next_monday;
?>

OUTPUT :

2014-09-01

Demo

Sign up to request clarification or add additional context in comments.

Comments

12

You can do it using the DateTime and DateTime::modify

$date = new DateTime('2014-08-24');
$date->modify('next monday');
echo $date->format('Y-m-d') . "\n";

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.