Hướng dẫn get weekdays php

I want to get Monday, Tuesday, Wednesday... using php function.

I have only numeric values for those like 1,2,3..7 where

1 = Monday 2 = Tuesday ... 7 = Sunday.

Can anybody help me regarding this.

Thanks,

Kanji

asked Dec 29, 2010 at 6:07

6

My personal favorite...

$day_start = date( "d", strtotime( "next Sunday" ) ); // get next Sunday
for ( $x = 0; $x < 7; $x++ )
    $week_days[] = date( "l", mktime( 0, 0, 0, date( "m" ), $day_start + $x, date( "y" ) ) ); // create weekdays array.

Khantahr

7,9084 gold badges33 silver badges55 bronze badges

answered Dec 8, 2012 at 19:21

CarlosCarlos

1601 gold badge2 silver badges13 bronze badges

If all you have is a numeric value and not a complete timestamp, by far the easiest way is this:

$weekdays = array('Monday', 'Tuesday', 'Wednesday', ...);
$weekday = 0;
echo $weekdays[$weekday];

answered Dec 29, 2010 at 6:14

decezedeceze

497k81 gold badges718 silver badges866 bronze badges

DateTime::format, with the $format parameter as l (lowercase L).

Object Oriented style:

$object->format('l');

Procedural style:

date_format(DateTime $object, 'l');

You can create a DateTime object with DateTime::__construct, and you can learn more about DateTime formats here.

answered Dec 29, 2010 at 6:12

waiwai933waiwai933

13.7k21 gold badges62 silver badges84 bronze badges

3

The following should give you the day of the week for today (ex. tuesday):

or for a specific date you can use something like this:

For more info: http://www.php.net/manual/en/function.date.php

If you have just a number that you are trying to convert to a day of the week, you could use the following:

function convertNumberToDay($number) {
    $days = array('Sunday','Monday', 'Tuesday', 'Wednesday','Thursday','Friday','Saturday');
    return $days[$number-1]; // we subtract 1 to make "1" match "Sunday", "2" match "Monday"
}
echo convertNumberToDay(3); // prints "Tuesday"

answered Dec 29, 2010 at 6:28

Andy FlemingAndy Fleming

7,3945 gold badges32 silver badges53 bronze badges


So you can create a simple function like this:

function getDayName($dayNo) {
    return date('l', mktime(0,0,$dayNo,0,1));
}

Demo: http://www.ideone.com/hrITc

answered Dec 29, 2010 at 6:29

Hướng dẫn get weekdays php

karim79karim79

336k66 gold badges410 silver badges405 bronze badges

If you simply want to convert 0 to "Monday", 1 to "Tuesday", etc. use an array.

$day_of_week = array
(
    0 => 'Monday',
    1 => 'Tuesday',
    2 => 'Wednesday',
    .
    6 => 'Sunday'
);

$day = 2;

echo $day_of_week[$day];

answered Dec 29, 2010 at 6:46

Amil WaduwawaraAmil Waduwawara

1,6121 gold badge16 silver badges14 bronze badges

1

switch ($day) {
    case 0 : echo "Monday"; break;//if $day = 0  it will print Monday
    case 1 : echo "Tuesday"; break;
    case 2 : echo "Wednesday"; break;
}

answered Dec 29, 2010 at 6:15

Hướng dẫn get weekdays php

rajmohanrajmohan

1,5981 gold badge13 silver badges32 bronze badges