You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP如何从包含年月日的完整日期中仅提取输出年份值

问题原因

  • 原有代码仅读取了$_GET['year']参数,但没有将参数值赋值给$date变量,导致后续调用的$date是未定义的空值
  • strtotime()接收到无效的日期参数时会返回布尔值false,date()函数处理false参数时会默认读取Unix时间戳起始值0,对应的年份就是1970年
  • 建议补充参数存在性判断,避免未传参数时抛出系统警告

修复后的代码

方法1:基于时间戳转换实现

<?php
if (isset($_GET['year'])) {
    $date = $_GET['year'];
    echo date('Y', strtotime($date));
}
?>

方法2:直接拆分字符串提取年份(效率更高,适配固定的YYYY-MM-DD格式)

<?php
if (isset($_GET['year'])) {
    echo explode('-', $_GET['year'])[0];
}
?>

内容的提问来源于stack exchange,提问作者natasha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:45:05