On Dec 29, 2007 8:32 PM, <[EMAIL PROTECTED]> wrote:
> Hello,
>
> Could someone tell me if this is possible and if it is how I do it. I
> have the following two file;
>
> file1.pl
> ---
> print "$testvar\n";
> ---
>
> file2.pl
> ---
> my $testvar = 37;
> use "file1.pl";
> ---
>
> If I run file2.pl (perl file2.pl) I will of course only see a newline.
> But is it possible to export the testvar to file1.pl?
>
Hi,
You can do what you wanted by declaring the variable $testvar with 'our':
$ cat t1.pl
print $testvar;
$ cat t2.pl
use strict;
our $testvar = 123;
require 't1.pl';
$ perl t2.pl
123
But wait, this way above is not good practice in perl programming.
You'd better write something like below:
$ cat t1.pl
sub myprint {
print $testvar;
}
1;
$ cat t2.pl
use strict;
require 't1.pl';
our $testvar = 123;
myprint();
$ perl t2.pl
123
Surely this is one way I showed. There are more ways to do it,like
using the OO,etc.
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/