Generaly, session files look something like this:
$D = { "_SESSION_EXPIRE_LIST" => {}, "_SESSION_REMOTE_ADDR" => "127.0.0.1", "_SESSION_ATIME" => "1057334715", "_SESSION_CTIME" => "1057334688", "_SESSION_ID" => "2edc038f30ed95d3bd43f113b5385a5d", "_SESSION_ETIME" => undef };
(Note, I've added some formatting. It's usually just one long line.)
As you can see it's a dumped (see Data::Dumper) data structure. It starts off with an assignment to $D. When using strict you have to declare your variables. Thus my $D; before the eval.
By eval()ing, I'm executing that code, thus doing the assignment to $D.
Check this out:
use strict; local $/; my $D; eval( <DATA> ); print $D->{ _SESSION_ID }; __DATA__ $D = { "_SESSION_EXPIRE_LIST" => {}, "_SESSION_REMOTE_ADDR" => "127.0.0.1", "_SESSION_ATIME" => "1057334715", "_SESSION_CTIME" => "1057334688", "_SESSION_ID" => "2edc038f30ed95d3bd43f113b5385a5d", "_SESSION_ETIME" => undef };
Try commenting out my $D;. You'll get an error.
HTH
--
"To err is human, but to really foul things up you need a computer." --Paul Ehrlich
In reply to Re: Re: Delete expired CGI::Session files
by LTjake
in thread Delete expired CGI::Session files
by LTjake
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |