-1

我正进入(状态

$VAR1 = bless( \*{'Fh::fh00001Screenshot.png'}, 'Fh' );

在一个变量中。但我需要从中检索fh00001Screenshot.png。我怎么才能得到它?

4

1 回答 1

4

Fh包在模块内部CGI用于处理用于构建多部分数据的临时文件。你不应该直接使用它。

仔细检查以确保在使用来自CGI代码的代码之前没有更好的方法Fh::asString

(my $name = $$VAR1) =~ s/^\*(\w+::fh\d{5})+//; 
print $name;

输出

Screenshot.png

更新

与其从代码中挑选一些内容,不如CGI从调用代码中访问这个包——它应该是一个真正的私有包。改用$var->asString,像这样

use strict;
use warnings;

use CGI;

my $var = do {
  no strict 'refs';
  my $var = bless( \*{'Fh::fh00001Screenshot.png'}, 'Fh' );
};

print $var->asString;
于 2013-02-15T13:38:40.990 回答