Я хочу напечатать имя дня, дающего числа от 1 до 7.
Пример:
<?php
echo date("1");
?>
и хотите получить вывод как Monday
. Но он печатает 1
.
Может ли кто-нибудь мне помочь?
Я хочу напечатать имя дня, дающего числа от 1 до 7.
Пример:
<?php
echo date("1");
?>
и хотите получить вывод как Monday
. Но он печатает 1
.
Может ли кто-нибудь мне помочь?
echo date ('l');
удивительно то, что вы найдете в руководстве, его l не 1
l (нижний регистр "L" ) Полное текстовое представление дня неделя с воскресенья по субботу
Обновление
скрытность не должна создавать собственный массив имен дней
$day='1';
echo date("l", mktime(0,0,0,8,$day,2011));// it will work for day 1-7
Используйте как:
$mydate = '2016-01-01';
echo date('l, F jS, Y', strtotime($mydate));
# Friday, January 1st, 2016
обратите внимание на букву l (нижний регистр L)
вы не можете сделать это с помощью date()
date()
= Возвращает строку, отформатированную в соответствии с заданной строкой формата, используя заданную метку времени или текущее время, если не указана метка времени.
Вы можете установить массив с вашими значениями:
$dates = array("", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday");
echo $dates[1]; // will output Monday
если вы хотите, чтобы имя текущего дня
echo date ('l'); // (lowercase 'L')
Другими словами, прочитайте manual
$mydate = '2016-09-25';
date('l', strtotime($mydate));
"l" l для блокировки: P
function dt($val) {
$arrWeek = array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
return $arrWeek[$val];
}
Вы можете использовать
echo date('l');
Также, если вы хотите локализовать его:
setlocale(LC_TIME, "C");//you need to change C with your locale.
echo strftime("%A");
решит вашу проблему.
если кто-то использует класс Carbon, который наследуется от PHP DateTime class,
Carbon::parse('yourdate')->formatLocalized('%A');