#!/usr/bin/perl use strict; use warnings; use Time::Piece; my @date = ( '2014-06-01', '2014-06-02', '2014-06-03', '2014-06-04' ); for my $i (0 .. $#date-1) { my $d1 = Time::Piece->strptime($date[$i], '%Y-%m-%d'); for my $j ($i+1 .. $#date) { my $d2 = Time::Piece->strptime($date[$j], '%Y-%m-%d'); my $diff = $d2 - $d1; print $d1->ymd, " and ", $d2->ymd, " is ", $diff->days, "\n"; } }