Forum Webscript.Ru
Программирование => Perl => Тема начата: Dipper от 29 Октября 2002, 22:56:52
-
Была вот такая попытка изменить/добавить данные в блок
__DATA__ но безуспешная :(
Но нужно именно в данном скрипте сделать добавление, чтобы эти изменения сохранились при следующем вызове. Подскажите плиз мож я не стого коонца захожу?
.........
$rd=();
print $rd;
print DATA "\\nother\\n";
__DATA__
master
.........
-
Ты не сможешь таким образом заставить твой сценарий изменить самого себя (если я тебя правильно понял). Для хранения данных используй внешний файл / БД.
-
Таким образом нет, а другим - сколько угодно.
file test.pl
======================================
#!perl
open SELF, ">>test.pl";
print SELF "\\nprint \\"File has been changed\\\\n\\";";
======================================
Все прекрасно изменяется.
-
[OFF]
а другим - сколько угодно
Вопрос - нужжно ли это?[/OFF]
-
Вопрос - нужжно ли это?
Бывает удобнее всё в одном файле хранить, и данные и код.
Я так иногда делаю, если данные не добавить, а перезаписать надо:
open(F,"<$0");
$newLine=$/;
$/="__DATA__\\n";
$body=;
close(F);
$/=$newLine;
open(F,">$0");
print F $body;
print F "Новые данные.";
close(F);
-
В принципе - у меня сие действие одноразовое (перворазовое)
именно с целью Бывает удобнее всё в одном файле хранить, и данные и код.
Огромное всем спасибо!
И пиво Evgeny :))