php获取是星期几的的一些常用姿势

yipeiwu_com4年前PHP代码库

一般有时在页面上需要显示是星期几,需要根据日期进行计算。

这边整理了几个相关的姿势,先来最终封装好的方法

/**
 * 一个通用的函数, 获取是星期几
 *
 * @param $date
 * @return string
 */
 function getDayOfWeek($date)
{
 $days = ['一', '二', '三', '四', '五', '六', '日'];
 return '星期' . $days[date('N', strtotime($date)) - 1];
}

其他星期相关的可以直接看代码哈,就不多啰嗦了,主要就是用date函数中的D、l(L的小写)、N、w字母来获取。

先来一个待转换的日期列表:

// 一个待转换的日期列表
$dates = [
 '2019-12-02', // 星期一
 '2019-12-03', // 星期二
 '2019-12-04', // 星期三
 '2019-12-05', // 星期四
 '2019-12-06', // 星期五
 '2019-12-07', // 星期六
 '2019-12-08', // 星期七
];

D 星期中的第几天,文本表示,3 个字母 Mon 到 Sun

// D 星期中的第几天,文本表示,3 个字母 Mon 到 Sun
foreach ($dates as $date) {
 echo date('D', strtotime($date));
 echo PHP_EOL;
}
// 输出
// Mon
// Tue
// Wed
// Thu
// Fri
// Sat
// Sun

l(“L”的小写字母) 星期几,完整的文本格式 Sunday 到 Saturday

// l(“L”的小写字母) 星期几,完整的文本格式 Sunday 到 Saturday
foreach ($dates as $date) {
 echo date('l', strtotime($date));
 echo PHP_EOL;
}
// 输出
// Monday
// Tuesday
// Wednesday
// Thursday
// Friday
// Saturday
// Sunday

N ISO-8601 格式数字表示的星期中的第几天(PHP 5.1.0 新加) 1(表示星期一)到 7(表示星期天)

// N ISO-8601 格式数字表示的星期中的第几天(PHP 5.1.0 新加) 1(表示星期一)到 7(表示星期天)
foreach ($dates as $date) {
 echo date('N', strtotime($date));
 echo PHP_EOL;
}
// 输出
// 1
// 2
// 3
// 4
// 5
// 6
// 7

w 星期中的第几天,数字表示 0(表示星期天)到 6(表示星期六)

// w 星期中的第几天,数字表示 0(表示星期天)到 6(表示星期六)
foreach ($dates as $date) {
 echo date('w', strtotime($date));
 echo PHP_EOL;
}
// 输出
// 1
// 2
// 3
// 4
// 5
// 6
// 0

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【宜配屋www.yipeiwu.com】的支持。

相关文章

PHP 登录完成后如何跳转上一访问页面

项目需求 访问网站页面时,有的页面需要授权才能访问,这时候就会要求用户登录,跳转到登录页面login.php,怎么实现登录后返回到刚才访问的页面。解决思路1: 在跳转...

PHP 文件上传进度条的两种实现方法的代码

目前我知道的方法有两种,一种是使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/packa...

php格式化时间戳显示友好的时间实现思路及代码

在项目中时间一律显示为2014-10-20 10:22显得很呆板。在微博、QQ空间等网站通常会显示为几秒前,几分钟前,几小时前等容易阅读的时间,我们称之为友好的时间格式。那么用php怎么...

比file_get_contents稳定的curl_get_contents分享

分享一个实际在用的函数: 复制代码 代码如下: /*比file_get_contents稳定的多!$timeout为超时时间,单位是秒,默认为1s。*/ function curl_ge...

php写入数据到CSV文件的方法

本文实例讲述了php写入数据到CSV文件的方法。分享给大家供大家参考。具体实现方法如下: <?php $row = 0; ini_set('max_execution_...