如何使用PHP将SQL数据中的两位年份拆分补全为四位完整年份
PHP 拆分补全两位年份为四位年份实现
核心处理逻辑
你的原始数据为「两位年份+两位字母编码」的固定长度字符串,按照给出的输出样例,补全规则可总结为:
- 两位年份数值较小(如18、19)补前缀
20,生成20xx年 - 两位年份数值较大(如98)补前缀
19,生成19xx年
通用实现可以取当前年份的后两位作为判定阈值,无需写死固定值,避免后续年份更迭出现判定错误:两位年份≥当前年份后两位时归为20世纪(前缀19),小于则归为21世纪(前缀20),和预期结果完全匹配。
可直接运行的代码示例
<?php // 原始待处理数据集 $rawList = [ '19DB', '18CA', '98CG' ]; // 取当前年份后两位作为判定阈值,2024年对应值为24 $threshold = intval(date('y')); foreach ($rawList as $item) { // 拆分前两位年份片段、后两位编码片段 $yearShort = substr($item, 0, 2); // 拼接世纪前缀 $century = intval($yearShort) >= $threshold ? '19' : '20'; // 按要求格式输出 echo '<li>' . $century . '<strong>' . $yearShort . '</strong></li>' . PHP_EOL; } ?>
运行输出结果
执行上述代码会直接生成需要的结构:
- 2019
- 2018
- 1998
如果需要固定判定规则不随年份变化,比如固定≥20的两位年份归为19xx,直接把代码里的$threshold变量赋值为20即可。
内容的提问来源于stack exchange,提问作者Muhammad Rifky
相关产品推荐
相关产品推荐

