PHP实现在线年龄计算器

1. 输入日期查询年龄 

  2. php laravel框架实现 代码
 /*** 在线年龄计算器*/public function ageDateCal(){// 输入的生日时间$birthday = $this->request('birthday');// 当前时间$currentDate = date('Y-m-d');// 计算周岁$age = date_diff(date_create($birthday), date_create($currentDate))->y;// 计算虚岁$nominalAge = $age + 1;// 计算已生活天数$days = date_diff(date_create($birthday), date_create($currentDate))->days;// 计算已生活分钟数// 获取当前时间戳$currentTimestamp = time();// 转换日期字符串为时间戳$inputTimestamp = strtotime($birthday);// 计算时间差(以分钟为单位)$minutes = round(abs($currentTimestamp - $inputTimestamp) / 60);// 计算距离一百岁还有多少年多少月多少日合计多少天$hundredYears = date("Y-m-d H:i:s", strtotime("$birthday+100year"));$diffDate = $this->diffDate($currentDate, $hundredYears);$remainingYears = $diffDate['y'];$remainingMonths = $diffDate['m'];$remainingDays = $diffDate['d'];$remainingTotalDays = $diffDate['a'];// 计算下次生日的日期和天数$nextBirthday = date('Y-m-d', strtotime($birthday . ' + ' . ($age + 1) . ' years'));$daysToNextBirthday = date_diff(date_create($currentDate), date_create($nextBirthday))->days;$week = $this->getWeekDay($nextBirthday);$data = ['age' => $age,'nominalAge' => $nominalAge,'days' => $days,'minutes' => $minutes,'remainingYears' => $remainingYears,'remainingMonths' => $remainingMonths,'remainingDays' => $remainingDays,'remainingTotalDays' => $remainingTotalDays,'nextBirthday' => $nextBirthday,'week' => $week,'daysToNextBirthday' => $daysToNextBirthday,];return $this->jsonSuc(['result' => $data]);}/*** 判断星期几* @param $time* @return string*/public function getWeekDay($time){$week_array = ['日', '一', '二', '三', '四', '五', '六'];$week = date("w", strtotime($time));return '星期' . $week_array[$week];}
/*** function:计算两个日期相隔多少年,多少月,多少天* param string $date1[格式如:2020-11-5]* param string $date2[格式如:2023-12-01]* return array array('年','月','日');*/function diffDate($date1, $date2){$datetime1 = new \DateTime($date1);$datetime2 = new \DateTime($date2);$interval = $datetime1->diff($datetime2);$time['y'] = $interval->format('%Y');$time['m'] = $interval->format('%m');$time['d'] = $interval->format('%d');$time['h'] = $interval->format('%H');$time['i'] = $interval->format('%i');$time['s'] = $interval->format('%s');$time['a'] = $interval->format('%a');    // 两个时间相差总天数return $time;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/70102.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价)

时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 MATLAB实现基于…

C语言——动态内存管理

动态内存管理详解 前言:一、为什么存在动态内存分配二、动态内存函数2.1malloc函数2.2calloc函数2.3realloc函数2.4free函数 三、常见的动态内存错误3.1 对NULL指针解引用操作3.2 对动态开辟空间的越界访问3.3 对非动态开辟内存使用free释放3.4 使用free释放动态开辟…

解决 adb install 错误INSTALL_FAILED_UPDATE_INCOMPATIBLE

最近给游戏出包,平台要求 v1 签名吧,AS 打包后,adb 执行安装到手机,我用的设备是google pixel6 , android 系统 13, 提示如下: adb install -r v5_android_202308161046.apk Performing Streamed Install a…

FreeRTOS qemu mps2-an385 bsp 移植制作 :串口打印篇

相关文章 FreeRTOS qemu mps2-an385 bsp 移植制作 :环境搭建篇 FreeRTOS qemu mps2-an385 bsp 移植制作 :系统启动篇 FreeRTOS qemu mps2-an385 bsp 移植制作 :系统运行篇 开发环境 Win10 64位 VS Code,ssh 远程连接 ubuntu …

基于ArcGis提取道路中心线

基于ArcGis提取道路中心线 文章目录 基于ArcGis提取道路中心线前言一、生成缓冲区二、导出栅格数据三、导入栅格数据四、新建中心线要素五、生成中心线总结 前言 最近遇到一个问题,根据道路SHP数据生成模型的时候由于下载的道路数据杂项数据很多,所以导…

矢量绘图UI设计软件Sketch mac中文版软件说明

Sketch mac是一款适用于 UI/UX 设计、网页设计、图标制作等领域的矢量绘图软件。 Sketch mac软件特点 1. 简单易用的界面设计:Sketch 的用户界面简洁明了,使得用户可以轻松上手操作,不需要复杂的学习过程。 2. 强大的矢量绘图功能&#xff1a…

Android CameraX适配Android13的踩坑之路

AndroidCameraX适配Android13的踩坑之路 前言: 最近把AGP插件升级到8.1.0,新建项目的时候目标版本和编译版本都是33,发现之前的demo使用Camerax拍照和录像都失败了,于是查看了一下官网和各种资料,找到了Android13的适…

微波光子的参数:噪声系数测量

在微波光子链路中,常用噪声系数(NF:Noise Figure)来衡量微波信号的信噪比从输入到输出的下降。因而它是结合了噪声和增益二者的一个综合指标。链路的噪声系数表达式为 噪声因子F:输入信噪比除以输出信噪比 噪声系数NF…

学习心得01:STM32开发板

嵌入式开发也不难,相关知识需要学习。对于某个具体内容,需要反复测试、修改。 这是我买的一个开发板,各个范例都跑了一遍,有问题的还问过客服(更新代码后解决)。

SpringBoot概述及项目的创建使用

文章目录 一. Spring Boot概述1. 什么是Spring Boot?2. Spring Boot的优点 二. Spring Boot项目的创建1. 使用IDEA创建1.1. 准备工作1.2. 创建运行Spring Boot项目1.3. 进行Web交互1.4. 目录工程介绍1.5. 项目快速添加依赖1.6. 防止配置文件乱码所需的配置1.7. Spri…

云安全攻防(十二)之 手动搭建 K8S 环境搭建

手动搭建 K8S 环境搭建 首先前期我们准备好三台 Centos7 机器,配置如下: 主机名IP系统版本k8s-master192.168.41.141Centos7k8s-node1192.168.41.142Centos7k8s-node2192.168.41.143Centos7 前期准备 首先在三台机器上都执行如下的命令 # 关闭防火墙…

Python random模块用法整理

随机数在计算机科学领域扮演着重要的角色,用于模拟真实世界的随机性、数据生成、密码学等多个领域。Python 中的 random 模块提供了丰富的随机数生成功能,本文整理了 random 模块的使用。 文章目录 Python random 模块注意事项Python random 模块的内置…