前言

在Perl 中, 不安装其他模组的状况下, 可以使用 localtime 来获取当地日期和时间。

在标量上下文中, 返回的是字符串格式。

my $localtime = localtime();
print "\n$localtime\n";

返回:

Thu Jan  1 18:17:56 2015

在列表上下文中, 返回的是描述当前时间的一个元素列表

my ($sec,$min,$hour,$mday,$mon,$year_off,$wday,$yday,$isdat) = localtime();

$sec     秒,0 ~ 59
$min     分,0 ~ 59
$hour     时,0 ~ 23
$mday     月份中的日期, 1 ~ 2 8、2 9、3 0或3 1
$mon     年份中的月份, 0 ~ 11(这里请特别要小心)
$year_off    1900年以来的年份。将1900加上这个数字,得出正确的4位数年份
$wday     星期几,0 ~ 6
$yday     一年中的第几天,0 ~ 364或365
$isdst     如果夏令时有效,则为真

所以通过这种方式获得的日期:

年份需要加 1900:  $year += 1900;

月份需要加一  : $mon += 1;

几个方法

得到当前日期:

sub get_current_day
{my($sec,$min,$hour,$day,$mon,$year) = localtime(); $mon++;$year += 1900;my $data_now = sprintf("%04d/%02d/%02d",$year,$mon,$day);return $data_now;
}

如果要得到上一天的日期, 不能只是简单的在上面的日期基础上减一, 如果这样, 遇到跨月就会有问题:

正确的是 时间减去 86400秒(24 小时)

sub get_last_day
{my($sec,$min,$hour,$day,$mon,$year) = localtime(time()-86400); $mon++;$year += 1900;my $data_now = sprintf("%04d/%02d/%02d",$year,$mon,$day);return $data_now;
}

得到上几天的日期:

sub get_last_number_day
{my($lastNumber) = @_; my($sec,$min,$hour,$day,$mon,$year) = localtime(time()-86400*$lastNumber); $mon++;$year += 1900;  my $data_now = sprintf("%04d/%02d/%02d",$year,$mon,$day);return $data_now;
}

[码海拾贝 之Perl]获取日期以及日期的加减相关推荐

  1. [码海拾贝 之Perl]在字符串数组中查找特定的字符串是否存在

    前言 检索一个字符串是否存在于一个数组中, 最基本的想法应该就是对数组进行循环, 逐个判断数组的每个元素值和给定的值是否相等. (在Java语言还可以把数组转成 List , 在 list 中直接有 ...

  2. 微信小程序时间转换成时间戳、获取当前时间戳、获取当前时间、时间戳加减

    时间转换成时间戳 var sTime = "2020-10-22 10:22:22"; var timestamp = Date.parse(new Date(sTime )); ...

  3. 微信小程序获取当前时间戳、获取当前时间、时间戳加减

    题外话: <Pi Network 免费挖矿国外热门项目 一个π币大约值3元到10元>相信过去BTC的人,信不信未来的PI,了解一下,唯一一个高度与之持平的项目 //获取当前时间戳 var ...

  4. java时间差的百分之二十,Java对日期Date类进行加减运算、年份加减月份加减、时间差等等...

    实现代码一: import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public c ...

  5. js 对日期的计算,加减天数

    js对日期的一些运算 (1)计算两个日期相邻天数 (2-1)日期加天数算出新日期 (2-2)日期减去天数等于新日期 (3)获得某月的最后一天 (4)获取相关月份的季度月份 这里的输入日期使用" ...

  6. 微信小程序js日期格式转化及加减

    项目中需要用到日期的格式转化及相关的加减,根据需要的情况,整理了部分方法.并列出date的构造方法及方法以作记录. 一.以下是根据小程序demo中util.js文件修改的 const formatTi ...

  7. java当前月份减一个月_Java对日期Date类进行加减运算、年份加减月份加减、时间差等等...

    实现代码一: import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public c ...

  8. [码海拾贝 之TC] 使用View 定义动态的Class

    前言 在TC 中, Persistent Class 和 Table 是对应的关系. 定义一个Persistent的Class , updatedb 的时候就会产生对应的table. 在TC 的开发环 ...

  9. [码海拾贝 之TC] 呼叫外部应用程序或脚本

    前言 在Teamcenter Enterprise 的服务端开发中, 如何调用到外部的程序或是脚本. 一般, 呼叫外部的程序或脚本 在Java 中, 可以用这样的方式 Process child = ...

最新文章

  1. HDU 1155 Bungee Jumping
  2. ARTS打卡计划第四周-ALGORITHM
  3. WDSL文件中的XML元素
  4. kafka_rebalance过长问题排查
  5. python 二分类的实例_keras分类之二分类实例(Cat and dog)
  6. 聊聊Election Algorithms
  7. plus/digg_ajax.php,织梦dedecms首页添加digg顶一下的修改方法
  8. 利用辗转相除法求两个数的最大公约数
  9. 网络七层协议(转载)
  10. 联想键盘F1-F12的切换
  11. 强制选择“你是不是喜欢我” python实现
  12. 频率相噪中相关公式、名词注释详解
  13. 【统计分析】(task4) 应用随机过程(更新ing)
  14. 自学python接单_Python接私活,兼职轻松月薪过万,会技术就可走遍天下
  15. 大数据可视化技术——平行坐标图、成对关系图、高级折线图
  16. Python编程PTA题解——查询水果价格
  17. Java job interview:网页设计HTML+CSS前端开发与PS前台美化案例分析
  18. JUC-08-java中的锁
  19. PTA:动物爱吃什么(c++,继承)
  20. Linux协议栈(1)——协议介绍

热门文章

  1. Myeclipse连接数据库删除数据库(JDBC)
  2. [luogu P3128][USACO15DEC]Max Flow [LCA][树上差分]
  3. iOS Crash文件的解析(一)
  4. JAVA 即时网络通信我的服务器
  5. 《linux c编程指南》学习手记1
  6. 如何构建一个生产环境的推荐系统?(附代码)
  7. 深度学习福利入门到精通第四讲——GoogleNet模型
  8. 复赛今日启动,双赛道百支队伍上演算法精英对决
  9. 机器学习算法总结之支持向量机(五)
  10. 服务器系统文档分类,服务器操作系统及分类