我想打印当天的名字,给出从1到7的数字。
例如:
<?php
echo date("1");
?>
并希望输出为Monday
。但它会打印1
。
任何人都可以帮助我吗?
答案 0 :(得分:21)
echo date ('l');
令人惊讶的是你在手册中找到的,它不是1
l(小写'L')当天的全文表示 星期日到星期六
<强>更新强>
偷偷摸摸,不必创建自己的日期名称数组
$day='1';
echo date("l", mktime(0,0,0,8,$day,2011));// it will work for day 1-7
答案 1 :(得分:14)
使用类似:
$mydate = '2016-01-01';
echo date('l, F jS, Y', strtotime($mydate));
# Friday, January 1st, 2016
请注意字母 l ( L 的小写字母)
答案 2 :(得分:6)
你不能用date()
date()
=使用给定的整数时间戳返回根据给定格式字符串格式化的字符串,如果没有给出时间戳,则返回当前时间。
您可以使用您的值设置数组:
$dates = array("", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday");
echo $dates[1]; // will output Monday
如果你想要当天的名字
echo date ('l'); // (lowercase 'L')
换句话说,请阅读manual
答案 3 :(得分:3)
$mydate = '2016-09-25';
date('l', strtotime($mydate));
这是&#34; l&#34; l for lock:P
答案 4 :(得分:1)
function dt($val) {
$arrWeek = array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
return $arrWeek[$val];
}
答案 5 :(得分:0)
您可以使用
echo date('l');
另外,如果你想本地化它:
setlocale(LC_TIME, "C");//you need to change C with your locale.
echo strftime("%A");
将解决您的问题。
答案 6 :(得分:0)
如果某人使用继承自PHP DateTime class,
的Carbon类Carbon::parse('yourdate')->formatLocalized('%A');