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

yipeiwu_com6年前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实现递归无限级分类

PHP实现递归无限级分类

在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。 递归,简单的说...

php使用ob_start()实现图片存入变量的方法

本文实例讲述了php使用ob_start()实现图片存入变量的方法。分享给大家供大家参考。具体实现方法如下: 用php的GD库处理完图片后,只能将图片用imagejpeg()输出,或者写...

老生常谈PHP 文件写入和读取(必看篇)

老生常谈PHP 文件写入和读取(必看篇)

文章提纲: 一.实现文件读取和写入的基本思路 二.使用fopen方法打开文件 三.文件读取和文件写入操作 四.使用fclose方法关闭文件 五.文件指针的移动 六.Window...

修改了一个很不错的php验证码(支持中文)

php英文验证码captcha.class.php 复制代码 代码如下: <?php class Captcha { private $width; private $height...

PHP 基于Yii框架中使用smarty模板的方法详解

第一种方法按照YII系统的办法生成视图觉得有点麻烦,觉得用smarty更省事。尝试着把smarty模板加进来了。复制代码 代码如下:date_default_timezone_set("...