|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Dmitry Grishkevich 2:454/23.37 10 Apr 2001 23:55:48 To : Sergey Kantarovich Subject : Шаблоны... -------------------------------------------------------------------------------- Sergey Kantarovich ==========> All: SK> Может кто подскажет как сделать такую вещь: SK> В текстовом файле хранится html шаблон из которого потом SK> генерится страничка. Задача: нужно что бы подпрограмма пробегала SK> по файлу, находила спецтеги %% СПЕЦТЕГ %% , заменяла их на SK> значения локальных переменных и отдавала уже обработанный текст SK> основной программе. Hапример: <html><body><title> SK> %%$title%%</title> После выполнения подпрограммы должно стоять SK> значение переменной $title SK> Что бы добавить в сл. код: SK> sub template{ SK> my ($filename) = @_; SK> my $kod; SK> local $/; SK> local *F; SK> open(F,"< $filename") or die error("Hе найден файл SK> шаблона $filename"); SK> $kod = <F>; SK> close(F); SK> .. SK> ???? SK> ... SK> return $kod; SK> } вот выдрано из Perl Cookbook: sub template { my ($filename, $fillings) = @_; my $text; local $/; # slurp mode (undef) local *F; # create local filehandle open(F, "< $filename\0") || return; $text = <F>; # read whole file close(F); # ignore retval # replace quoted words with value in %$fillings hash $text =~ s{ %% ( .*? ) %% } { exists( $fillings->{$1} ) ? $fillings->{$1} : "" }gsex; return $text; } --- GoldED+/W32 snapshot-2001.02.24 * Origin: Старый, опытный камикадзе (2:454/23.37) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/147213ad3741e.html, оценка из 5, голосов 10
|