C
cyberblade
Подскажите кто-нибудь новичку в перле, как праильно передать переменную или массив в созданный пакет. Возможно я просто не понимаю работу с переменными глобальными и локальными...
Скажем есть пакет: LibTestPack.pm
И есть основная программа из которой отбращаюсь к пакету, делаю это так: TestPack.pl
После запуска на сервере программа выдаст local &
Хочу, чтоб выдала local & global
Кому-то вопрос покажется банальным.
Помогите мне разобраться... Спасибо.
Скажем есть пакет: LibTestPack.pm
Код:
#!/usr/bin/perl
#
package LibTestPack;
use base 'Exporter';
our @EXPORT=qw(test_data);
sub test_data{
my $local_data = "local";
print "$local_data & $global_data\n";
}
1;
И есть основная программа из которой отбращаюсь к пакету, делаю это так: TestPack.pl
Код:
#!/usr/bin/perl -w
#
print "Content-Type: text/html; charset=utf-8\n\n";
# mod
use DBI;
use URI::Escape;
use CGI qw(:standard);
use CGI::Carp 'fatalsToBrowser';
# package
use lib "library"; # - Путь к файлам
use LibTestPack; # - Подключаю пакет
# list
$global_data = "global"; # Создаю переменную
# Как передать $global_data в пакет подпрограмме test_data?
test_data; # Использую подпрограмму из пакета.
После запуска на сервере программа выдаст local &
Хочу, чтоб выдала local & global
Кому-то вопрос покажется банальным.
Помогите мне разобраться... Спасибо.