sub getFile { my $fileName = shift(@_); unless ($gotFiles->{$fileName}) { undef $/; open $file, $fileName; my $buf = <$file>; close $file; $gotFiles->{$fileName} = $buf; } return $gotFiles->{$fileName}; } sub writeFile { my $data = shift(@_); if ($data =~ m@(.*?)@s) { $filename = $1; } if ($data =~ m@(.*)@s) { $filedata = $1; } open(DAT,">$ENV{DOCUMENT_ROOT}/$filename") || return 0; print DAT $filedata; close(DAT); $gotFiles->{"$ENV{DOCUMENT_ROOT}/$filename"} = $filedata; return 1; }