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
deceze♦deceze
497k81 gold badges718 silver badges865 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: //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: //www.ideone.com/hrITc
answered Dec 29, 2010 at 6:29
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
rajmohanrajmohan
1,5981 gold badge13 silver badges32 bronze badges