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

yipeiwu_com7年前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和vue配合使用技巧和方法

php和vue可以配合使用,我们可以利用vue和php进行前后端分离。 进行前后端分离的好处 前后端分离后可以使前后端工程师分工更加明确,让后端工程师专注于业务逻辑的实现以及性能优化,安...

PHP CLI模式下的多进程应用分析

PHP在很多时候不适合做常驻的SHELL进程, 他没有专门的gc例程, 也没有有效的内存管理途径. 所以如果用PHP做常驻SHELL, 你会经常被内存耗尽导致abort而unhappy....

PHP中的self关键字详解

前言 PHP群里有人询问self关键字的用法,答案是比较明显的:静态成员函数内不能用this调用非成员函数,但可以用self调用静态成员函数/变量/常量;其他成员函数可以用self调用静...

探讨:parse url解析URL,返回其组成部分

parse_url(PHP 4, PHP 5)parse_url — 解析 URL,返回其组成部分说明array parse_url ( string $url )本函数解析一个 URL...

分享php邮件管理器源码

分享php邮件管理器源码

本文为大家提供了php邮件管理器源码,希望大家喜欢。 1、需求分析 管理员应该能够建立和修改邮件内容。 管理员应该能够将文本或HTML格式的新闻信件发送给一个列表中的所有订阅者。 用户应...