<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Статьи]]></title>
    <link>https://habr.com/ru/users/pyu/publications/articles/</link>
    <description><![CDATA[Хабр: статьи пользователя pyu]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Tue, 21 Jul 2026 14:39:25 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      
        
    
    <item>
      <title><![CDATA[Модуль HTML::Phl для обработки HTML-документов, содержащих инструкции с кодом Perl]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/304634/</guid>
      <link>https://habr.com/ru/articles/304634/?utm_campaign=304634&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/files/2b6/801/9d7/2b68019d79ff4d4d9d89c82086e07f57.jpg" width="721" height="354"/><br/>
<br/>
В статье приведена спецификация модуля <font color="#000099">HTML::Phl</font> для работы с HTML-документами, содержащими код языка программирования Perl.<br/>
<br/>
Задача модуля <font color="#000099">HTML::Phl</font> — выбрать из текстового документа формата HTML, размещенный в нем особым образом perl-код, выполнить кое-какие манипуляции над ним и остальным кодом, объединить полученное в единый код perl и «скормить» всё это '<font color="#000099">eval</font>', получая на выходе сгенерированную HTML-страницу, воспроизводимую веб-браузером.<br/>
<br/>
<div class="spoiler"><b class="spoiler_title">Пример</b><div class="spoiler_text"><pre><code>1   &lt;HTML&gt;
2   &lt;HEAD&gt;
3   &lt;META content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
4   &lt;TITLE&gt;Пример PHL&lt;/TITLE&gt;
5   &lt;/HEAD&gt;
6   
7   Создаем два дочерних процесса f1 и f2&lt;br&gt;
8
9   %pl  include(&quot;process_win.phl&quot;, &quot;fork decode=cp1251&quot;, &quot;f1&quot;);
10  %pl  include(&quot;process_utf.phl&quot;, &quot;fork decode=utf8&quot;, &quot;f2&quot;);
11
12  Ждем завершения процессов&lt;br&gt;
13
14  &lt;%pl my %join = include(&quot;JOIN&quot;, &quot;f1 f2&quot;); %&gt;
15
16  Результаты выполнения процессов&lt;br&gt;
17
18  &lt;%pl
19     foreach my $key(keys(%join)) {
20        if (ref $join{$key}) {
21           print &quot;процесс '$key' - результат: &quot;;
22           for (my $i = 0; $i &lt;= $#{$join{$key}}; $i++) {
23              print &quot;'${$join{$key}}[$i]' &quot;;
24           }
25           print &quot;&lt;br&gt;&quot;;
26        } else {
27           print &quot;процесс '$key' - результат: '$join{$key}'&lt;br&gt;&quot;;
28        }
29     }
30  %&gt;
31   
32  &lt;/HTML&gt;
</code></pre><br/>
</div></div><br/>
Статья написана в ознакомительных целях, разработка модуля носит концептуальный характер, и его надежное применение нуждается в дополнительном тестировании. <a href="https://habr.com/ru/articles/304634/?utm_campaign=304634&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Mon, 26 Dec 2016 15:38:53 GMT</pubDate>
      <dc:creator><![CDATA[Pyu]]></dc:creator>
      <category><![CDATA[Perl]]></category><category><![CDATA[Программирование]]></category><category><![CDATA[Веб-разработка]]></category>
      <category><![CDATA[perl]]></category>
    </item>
  

  

  

	
  

  

  

      

      

      

    
  </channel>
</rss>
