camel
Модуль HTML::Phl
Для обработки HTML-документов, содержащих инструкции с кодом Perl
О модуле Спецификация Downloads Контакты

Разделители  

Задача разделителей - отделить указатель инструкции от имени блока.

В отличие от ':', разделитель '=' изменяет в анализаторе интерпретацию кода. При этом, результат применения разделителя '=' в однострочном и многострочном блоках различаются.


 1 %pl  my $test = "<b>тест</b>";
 2 
 3 1. Переменная '<%pl= $test %>' внутри однострочного блока.
 4 <br><br>
 5 
 6 <%pl=name1
 7    2. Переменная '$test' внутри
 8    многострочного блока '<b>$phl_blok[1]</b>' (разделитель '=').
 9 %>
 10 <br><br>
 11 
 12 <%pl:name2
 13    print "3. Переменная '$test'";
 14    print "внутри многострочного блока '<b>$phl_blok[2]</b>' (разделитель ':').";
 15 %>

Код после анализатора:

 1 my $test = "<b>тест</b>";
 2  print <<'[HTML]';
 3  
 4 [HTML]
 5  print <<'[HTML]' =~ /(.*)/;
 6 1. Переменная '
 7 [HTML]
 8 print($test);
 9  print <<'[HTML]';
 10 ' внутри однострочного блока.
 11 [HTML]
 12  print <<'[HTML]';
 13 <br><br>
 14  
 15 [HTML]
 16  print <<"[HTML]";
 17    2. Переменная "$test" внутри
 18    многострочного блока "<b>$phl_blok[1]</b>" (разделитель "=").
 19 [HTML]
 20  print <<'[HTML]';
 21 <br><br>
 22  
 23 [HTML]
 24    print "3. Переменная '$test'";
 25    print "внутри многострочного блока '<b>$phl_blok[2]</b>' (разделитель ':').";



27375