Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Igor Gerdler                         2:5020/400     02 Apr 2002  11:59:48
 To : Dmitry Sergeev
 Subject : Возможные действия
 -------------------------------------------------------------------------------- 
 
 Добрый день, уважаемый Дмитрий!
 
 > global symbol $string requires explicit package name.
 
 В сообщении сообщается, что нужно явно указать имя пакета для используемой
 переменной. Сообщение обычно появляется, когда ты используешь переменную не
 объявив ее в текущем пространстве имен (name space) или когда ты используешь
 переменную в функции, описанной внутри другой функции:
 sub func1 {
     my $var1 = 13;
     my $var3 = func2();
     sub func2 {
         my $var2 = $var1*7;
         return $var2;
     }
 }
 
 Мне приходилось сталкиваться с такой ошибкой при работе с mod_perl используя
 модуль Apache::Registry, т.к. в этой случае твой скрипт на самом деле
 является телом функции handler().
 
 В качестве рекомендации могу предложить объявлять все используемые
 переменные и если нужно иметь глобальные в пространстве имен скрипта
 переменные - объяви их в основной части скрипта и передавай в функции в
 качестве параметров.
 Hапример:
 sub func1 {
     my $var1 = 13;
     my $var3 = func2($var1);
     sub func2 {
         my $var1 = shift;
         my $var2 = $var1*7;
         return $var2;
     }
 }
 
 Всего доброго!
 Игорь Гердлер
 --- ifmail v.2.15dev5
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 ошибка requires explicit package name   Dmitry Sergeev   02 Apr 2002 11:26:43 
 Возможные действия   Igor Gerdler   02 Apr 2002 11:59:48 
 Re: Возможные действия   Andrey Sapozhnikov   02 Apr 2002 15:43:13 
 Re: ошибка requires explicit package name   Konstantin Tokar   02 Apr 2002 11:53:35 
Архивное /ru.cgi.perl/6577278db86e.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional