FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Brilliance requested - calculating a date next month
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Brilliance requested - calculating a date next month [message #174474 is a reply to message #174466] Mon, 13 June 2011 11:36 Go to previous messageGo to previous message
bill is currently offline  bill
Messages: 310
Registered: October 2010
Karma:
Senior Member
On 6/12/2011 10:11 PM, Chuck Anderson wrote:
> bill wrote:
>> I am quietly banging my head on the wall. In concept it seems
>> so simple:
>>
>> I need to calculate the date of an appointment next month.
>> but:
>> it needs to be on the same day of the month,
>> eg: from the 2nd Tuesday of this month to the 2nd Tuesday of
>> next month.
>>
>> obviously this will not work the 5th week of any month, so we
>> can limit it to the first 4 weeks of the "from" month (but this
>> is not the same as the first 28 days- for example January of
>> this year starts on a Saturday so the first "week" is only Jan
>> 1. The 2nd "week" is Jan 2..8, the third "week" is Jan 9..15).
>>
>> I was hoping that php would have a nifty dateTime function to
>> do this, but I can't find one: I checked out dateInterval and
>> the various date functions.
>>
>> Right now I am so brain locked that I can't even figure out how
>> to calculate which week of the month is the first date.
>>
>> Any suggestions, links, kind words would be appreciated.
>> bill
>
>
> The strtotime function will do this for you. When I needed to do
> the same thing I found this note quite helpful.
>
> http://www.php.net/manual/en/function.strtotime.php#94423
>
> I ended up simply doing this (no plus and minus for instance,
> except the special case = 5):
>
> <?php
> //****
> example
> //
> $instance = 3; // 0 - 5 (0 is the same as the first (1) instance;
> // 5 is the "last" instance)
> $day_of_week = 'Monday'; // Sunday - Saturday
> $month = 'June';
> $year = 2011;
> //
> //****
>
> echo date('Ymd', strtotime("$instance $day_of_week $month $year"));
> ?>
>
> Note that the fifth instance (5) can be done. If instance is 5
> (i.e., the last instance in the month) you can use -1 for
> instance of the day of week of the *next* month.
>
> <?php
> if ($instance == 5) // get -1 instance of day of week from next
> $month
> {
> $month = date('n', strtotime("+1 month $month $year"));
> $instance = -1;
> }
> ?>
>
> I'll leave it to you to handle December.
>
couldn't be much simpler.
Thanks
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: Strategic HR Summit 2011 (Jun 25, Mumbai)
Next Topic: MySQL's PASSWORD() function
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Tue Dec 24 03:44:53 GMT 2024

Total time taken to generate the page: 0.04724 seconds