[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 446
  • Last Modified:

Perl using time() fails

I am getting these erros... Trying simple code to work with time

I don't know what is wrong... I need to do simple date math code

./dateExample.pl: line 6: syntax error near unexpected token `('
./dateExample.pl: line 6: `my $time = time();'


Code line 6  is
my $time = time();


my code
===============


#/app/cawily/support/perl/bin/perl -w



my $time = time();


my $future_time = $time + (45 * 24 * 60 *60);
my ($second, $minute, $hour, $day, $month, $year, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime($time);
my ($fsecond, $fminute, $fhour, $fday, $fmonth, $fyear, $fdayOfWeek, $fdayOfYear, $fdaylightSavings) = localtime($future_time);

$year += 1900;
$fyear += 1900;

print "$month/$day/$year\n";
print "$fmonth/$fday/$year\n";
0
eluka68
Asked:
eluka68
2 Solutions
 
eluka68Author Commented:
I busted
THe first line should have been
#!/app/cawily/support/perl/bin/perl


But let me modify the Question.... I need help getting to know what day of the week it is (MON, Tuesday and so forth)
0
 
tdlewisCommented:
Your $dayOfWeek variable tells you what day of the week it is. Here is a slightly modified version of your code that adjusts for zero-based months.
#!/app/cawily/support/perl/bin/perl -w

my $time = time();

my $future_time = $time + (45 * 24 * 60 *60);
my ($second, $minute, $hour, $day, $month, $year, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime($time);
my ($fsecond, $fminute, $fhour, $fday, $fmonth, $fyear, $fdayOfWeek, $fdayOfYear, $fdaylightSavings) = localtime($future_time);

$year += 1900;
$fyear += 1900;

$month++;
$fmonth++;

my @days = ("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat");

print "$days[$dayOfWeek] $month/$day/$year\n";
print "$days[$fdayOfWeek] $fmonth/$fday/$year\n";

Open in new window

0
 
TintinCommented:
Much easier to do

#!/app/cawily/support/perl/bin/perl -w
use POSIX 'strftime';
my $day = strftime '%a',localtime;
print "day is $day\n";

Open in new window

0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
arnoldCommented:
Sunday is 0.
You can define an array ahead of time and the
@dayofweek=("Sun","Mon",);
Etc.
Doing the same for months will reduce the overhead of including/referencing other functions.
0
 
ahoffmannCommented:
@d=(qw(So Mo Tu We Th Fr Sa));@t=localtime;print $d[$t[6]];
# to be improved in many ways
0
 
ozoCommented:
print (qw(Su Mo Tu We Th Fr Sa)[(localtime)[6]]);
0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now