Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как передать значение переменной в модуль в Perl? педача переменной в подключаемый модуль 
:(
    Опции темы
trinitr0
Дата 21.2.2018, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 102
Регистрация: 25.6.2013

Репутация: нет
Всего: нет



Здравствуйте!

Каким образом в perl можно передать значение переменной из основного модуля в подключаемый?

Пробовал так (нужно передать значение переменной $ip в модуль getlib):

main.pl
Код

use getlib;
use strict;
...
while (@row = $sth -> fetchrow_array())
{    
  $ip = $row[0]; 
  
  foreach $ip(@row)
  {
    print "$ip - OK!, then $ip to continue...\n";
    getconf();                 
    }
}
getlib:


getlib.pm
Код

package getlib;
use Exporter 'import';
our @EXPORT_OK = /getconf/;

sub getconf {
  ...    
  $telnet -> open($::ip); #connect to switch
  ...
}
1;
  smile 
PM MAIL Jabber   Вверх
arto
Дата 21.2.2018, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



getconf($ip)

sub getconf($) { $telnet->open($_[0]) }
PM MAIL ICQ   Вверх
trinitr0
Дата 22.2.2018, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 102
Регистрация: 25.6.2013

Репутация: нет
Всего: нет



Если так:

Код

use getlib;
use strict;
...
while (@row = $sth -> fetchrow_array())
{    
  $ip = $row[0]; 
  
  foreach $ip(@row)
  {
    print "$ip - OK!, then $ip to continue...\n";
    getconf($ip);                 
    }
}


Код

package getlib;
use Exporter 'import';
our @EXPORT_OK = /getconf/;
sub getconf($ip) {
  ...    
  $telnet -> open($_[0]); #connect to switch
  ...
}
1;


То: 
Undefined subroutine &main::getconf called at main.pl line...
PM MAIL Jabber   Вверх
arto
Дата 22.2.2018, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



use getlib qw( getconf );


sub getconf($) { ....



PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1047 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.