php 时间函数 面试

PHP 是一门非常强大的编程语言,其拥有众多的无参函数,其中包括关于时间的函数,这些函数可以方便地对时间进行操作和处理,下面就来详细介绍一下 PHP 时间函数。

1. date() 函数

PHP 的 date() 函数可以用来格式化时间和日期,语法如下:

```php

string date ( string $format [, int $timestamp = time() ] )

```

其中,format 是必需的参数,指定要返回的时间和日期的格式;timestamp 是可选的,若不提供则默认使用当前时间,时间戳格式。

下面是一些常用的 format 格式:

| 字符 | 描述 | 示例 |

| ----- | --------------------------------------------------------------- | ------------------------------------------------------------- |

| Y | 四位数的年份 | 2022 |

| y | 两位数的年份 | 22 |

| m | 双数的月份(有前导零) | 01-12 |

| n | 月份(没有前导零) | 1-12 |

| d | 双数的月中日(有前导零) | 01-31 |

| j | 月中日(没有前导零) | 1-31 |

| H | 双数的小时(24 小时制,有前导零) | 00-23 |

| h | 双数的小时(12 小时制,有前导零) | 01-12 |

| i | 双数的分钟(有前导零) | 00-59 |

| s | 双数的秒数(有前导零) | 00-59 |

| A | 大写的上午或下午 | AM 或 PM |

| a | 小写的上午或下午 | am 或 pm |

| l | 本地化的完整星期名称 | Sunday-Saturday |

| D | 本地化的缩写星期名称 | Sun-Sat |

| M | 本地化的缩写月份名称 | Jan-Dec |

| F | 本地化的完整月份名称 | January-December |

| U | Unix 时间戳(自 Unix 纪元以来的秒数) | 1637127361 |

| \ | 转义字符,用于使格式字符失去其特殊含义,就像是日期格式的字面值 | \d 表示月中日 |

例如:

```php

echo date('Y-m-d H:i:s'); // 输出当前时间,格式为:2022-01-02 20:21:22

```

2. time() 函数

PHP 中的 time() 函数可以返回当前时间的 Unix 时间戳。

```php

int time ( void )

```

Unix 时间戳是自 1970 年 1 月 1 日 00:00:00 GMT 到当前时刻的秒数。

例如:

```php

echo time(); // 输出当前 Unix 时间戳,例如:1641153690

```

3. strtotime() 函数

PHP 中的 strtotime() 函数可以将字符串转换为 Unix 时间戳,其语法如下:

```php

int strtotime ( string $time [, int $now = time() ] )

```

其中,time 是必需的参数,表示要转换为时间戳的字符串;now 是可选的,可以指定转换所使用的时间,若不提供则默认使用当前时间。

例如:

```php

echo strtotime('2022-01-23 01:12:00'); // 将字符串转换成 Unix 时间戳,输出:1642912320

```

4. mktime() 函数

PHP 中的 mktime() 函数可以根据指定的日期和时间创建一个 Unix 时间戳,其语法如下:

```php

int mktime ( [ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )

```

其中,hour、minute 和 second 表示时、分、秒,取值范围都是 0-59;month、day 和 year 分别表示月、日和年份;is_dst 表示是否使用夏令时,默认值为 -1,表示由 PHP 自动决定是否使用夏令时。

例如:

```php

echo mktime(0, 0, 0, 1, 23, 2022); // 创建一个 Unix 时间戳,表示 2022 年 1 月 23 日 00:00:00,输出:1642915200

```

5. getdate() 函数

PHP 中的 getdate() 函数可以将 Unix 时间戳转换为一个数组,数组中包含有关日期和时间的各种信息,如年、月、日、小时、分钟、秒等。

```php

array getdate ( [ int $timestamp = time() ] )

```

其中,timestamp 是可选的,如果未提供则默认使用当前时间。

例如:

```php

print_r(getdate()); // 将当前时间戳转换成数组,输出:Array ( [seconds] => 17 [minutes] => 55 [hours] => 8 [mday] => 7 [wday] => 5 [mon] => 1 [year] => 2022 [yday] => 6 [weekday] => Friday [month] => January [0] => 1641540917 )

```

6. microtime() 函数

PHP 中的 microtime() 函数用于获得当前时间的微秒数,其语法如下:

```php

mixed microtime ([ bool $get_as_float = FALSE ] )

```

其中,get_as_float 是可选的,如果将其设置为 true,则返回一个浮点数,否则返回一个字符串。

例如:

```php

echo microtime(); // 返回当前时间的微秒数,例如:0.97620200 1641542623

```

总结

以上就是 PHP 中常用的时间函数,它们可以方便地对时间和日期进行操作和处理。在实际的开发过程中,我们会经常使用这些函数来进行各种时间相关的计算和处理,如计算日期之间的差值、比较两个时间的先后等等。因此,掌握这些函数的用法非常重要,可以提高代码的效率和准确性。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.ynyuzhu.com/

点赞(49) 打赏

评论列表 共有 0 条评论

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