php 只调用一次函数

PHP中,我们可以使用date()函数获取当前的日期和时间,但是如何获取本月的天数和每天的星期几呢?其实,我们可以使用一些内置函数来轻松实现这些功能。

首先,我们来了解一下PHP中的时间日期格式。日期格式常见的有date()函数的参数格式、strtotime()函数的格式、DateTime类格式等。其中,date()函数的参数格式如下:

```php

date(format, [timestamp]);

```

其中,format表示时间的格式,timestamp是一个可选参数,表示要格式化的时间,默认为当前时间戳。我们可以使用format中的特殊参数来格式化时间。下表是format中常用的参数:

| 参数 | 描述 |

| :- | :- |

| Y | 4位数的年份 |

| m | 2位数的月份 |

| d | 2位数的日期 |

| H | 24小时制的小时数 |

| i | 2位数的分钟数 |

| s | 2位数的秒数 |

| w | 星期几,0(星期日)到6(星期六) |

| t | 本月的天数 |

接下来,我们来编写一个函数来获取本月的天数和每天的星期几。代码如下:

```php

function getMonthDaysAndWeekdays($month = null, $year = null)

{

// 如果未传入月份和年份,则使用当前的月份和年份

if (!$month || !$year) {

$month = date('m');

$year = date('Y');

}

// 获取本月的天数

$days = date('t', strtotime("$year-$month-01"));

// 遍历本月的每一天,获取每天的星期几,并存入数组中

$weekdays = array();

for ($day=1; $day<=$days; $day++) {

$weekday = date('w', strtotime("$year-$month-$day"));

$weekdays[] = $weekday;

}

// 返回一个数组,包含本月的天数和每天的星期几

return array(

'days' => $days,

'weekdays' => $weekdays

);

}

```

上述代码中,我们使用了strtotime()函数来将一个字符串时间转换成时间戳格式。首先,我们需要判断是否传入了月份和年份参数,如果没有则使用当前的月份和年份。然后,我们使用date()函数的t参数来获取本月的天数。接着,我们使用一个for循环遍历本月的每一天,使用date()函数的w参数来获取每天的星期几,并将其存储在一个数组中。最后,我们返回一个包含本月的天数和每天的星期几的数组。

我们可以使用下面的代码来测试一下这个函数:

```php

$result = getMonthDaysAndWeekdays('02', '2022');

echo "本月共有{$result['days']}天:\n";

foreach ($result['weekdays'] as $day => $weekday) {

echo "第".($day+1)."天是星期".$weekday."\n";

}

```

上述代码中,我们传入了月份和年份参数,并遍历了本月的每一天,并输出了每天的星期几。输出如下:

```

本月共有28天:

第1天是星期2

第2天是星期3

第3天是星期4

第4天是星期5

第5天是星期6

第6天是星期0

第7天是星期1

...

```

当然,也可以不传入参数,直接获取当前月份的天数和每天的星期几。代码如下:

```php

$result = getMonthDaysAndWeekdays();

echo "本月共有{$result['days']}天:\n";

foreach ($result['weekdays'] as $day => $weekday) {

echo "第".($day+1)."天是星期".$weekday."\n";

}

```

输出如下:

```

本月共有31天:

第1天是星期6

第2天是星期0

第3天是星期1

第4天是星期2

第5天是星期3

第6天是星期4

第7天是星期5

...

```

总结一下,本文介绍了如何使用PHP内置函数来获取本月的天数和每天的星期几。我们使用了date()函数的t参数来获取本月的天数,使用了date()函数的w参数来获取每天的星期几,使用了strtotime()函数来转换字符串时间,使用了一个for循环来遍历本月的每一天,并将每天的星期几存储到一个数组中。最终,我们编写了一个函数,可以灵活地获取任意月份的天数和每天的星期几。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(99) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部