htmlタグをエスケープしたい場合は以下。エンコードする場合はエンコードしたい文字参照の参照先を書く。デフォルトではASCII以上のビットを持つ文字はすべて文字参照化されるので、UTF8で書かれた日本語はすべて数値文字参照になってしまう。
$ perl -MHTML::Entities -Mutf8 -le 'print encode_entities("<p>日本語html</p>");'
<p>日本語html</p>
<p>日本語html</p>
$ perl -MHTML::Entities -Mutf8 -le 'print encode_entities("<p>日本語html</p>", "<>&");'
Wide character in print at -e line 1.
<p>日本語html</p>
エスケープされて文字参照化されたhtmlタグを復元したい場合は以下。
$ perl -MHTML::Entities -Mutf8 -le 'print decode_entities("<p>日本語html</p>");'
Wide character in print at -e line 1.
<p>日本語html</p>
$ perl -MHTML::Entities -Mutf8 -le 'print decode_entities("<p>日本語html</p>");'
Wide character in print at -e line 1.
<p>日本語html</p>