|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/371.32 20 Apr 2000 15:14:42 To : shikov@rinet.ru Subject : Re: mod_perl --------------------------------------------------------------------------------
>> > > Возможно все и так в курсе, но я только сегодня нарвался и
>> > > хочу других предупредить. Вот так:
>> > >
>> > > my $x;
>> > > print $x;
>> > > BEGIN {$x="OK";}
>> > >
>> > > делать в mod_perl нельзя. Оно на первый взгляд работает,
>> > > но... не всегда :)
>> > А что происходит?
>>
>> Hа цатой попытке эта переменная оказывается неопределенной.
>> Такое ощущение, что my $x; начинает интерпретироваться как
>> my $x=undef;
>>
>> Если же сделать ее глобальной - use vars '$x' - то тогда все
>> ok.
srr> А ведь строго говоря, скрипты-то под mod_perl-ом компилируются один раз,
srr> и потом в памяти сидят. А что при этом с BEGIN {$x="OK";} происходит
srr> (должно происходить)? Я как-то раньше не задумывался о таких тонкостях.
Чуть не первый абзац в документации - BEGIN исполняется при компиляции. То
есть от редактирования до редактирования скрипта не более одного раза на дитя.
--
Счастливо!
Ран.
--- ifmail v.2.14.os-p7-tma3
* Origin: MemoNet (2:5020/371.32@fidonet)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/347389dbfe34.html, оценка из 5, голосов 10
|