mod_perl对像编程中超级奇怪的问题~~~~~

mod_perl对像编程中超级奇怪的问题~~~~~

mod_perl对像编程中超级奇怪的问题~~~~~
用以下方法写的mod_perl程序中.函数中的$1 ,$2, ...$8 似乎都是空的....不知道怎么回事.
$test= mainpg->new();
$test->load_msg("c:/1.txt");

1.txt内容
username = mcst
scool = ffffffffffff
zipcode = ddddd
other = ddfdsf

以下为mainpg程序代码
package mainpg;
use strict;
use warnings;
no warnings qw(uninitialized redefine once);
$imxMain::VERSION = "2.10.0";

sub new
{
....省略
}

sub load_msg {
my($file_name, %MSG);
$file_name = shift;
my $code;

open(MSG, "$file_name");
foreach (<MSG>){
if (/([^=]*?)\s*=\s*(.*?)\s*$/){
# $MSG{$1} = $2;
$code .= $1;
$code .= $2;
}
}
close(MSG);

return $code;
}
如何确定是 modperl 的问.
如何确定是 modperl 的问题?
在非modperl环境下正常么?
sub load_msg {-- m.
sub load_msg {
my($file_name, %MSG);
my $self = shift;
$file_name = shift;
my $code;
sub load_msg {-- my .
sub load_msg {
my ([color=red]$class[/color], $file_name) =@_;
my $code;
....
}
这样才对。既然是OOP调用,包名丢了,你的原程序 $file_name 获得其实只是对象而已,不是c:/1.txt,c:\1.txt被你丢掉了,另外,%MSG没有使用,去掉为佳。
汗,没有注意,3楼myome已.
汗,没有注意,3楼myome已经回答了原因。
向路杨同志学习,解释得很.
向路杨同志学习,解释得很详细
谢谢,谢谢各位老大,找到问.
谢谢,谢谢各位老大,找到问题了....