Strip HTML or XML tags from a string with Perl like PHP's strip_tags() does
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib/HTML
t
.gitignore
Build.PL Fix homepage URL Jun 30, 2011
Changes
INSTALL
LICENSE First CPAN release. Version 1.00. May 25, 2011
MANIFEST First CPAN release. Version 1.00. May 25, 2011
MANIFEST.SKIP
META.json
META.yml
Makefile.PL
README

README

NAME
    HTML::StripTags - Strip HTML or XML tags from a string with Perl like
    PHP's strip_tags() does

SYNOPSIS
     use HTML::StripTags qw(strip_tags);

     $string       = '<html>Hallo <u>beautiful</u> <a href="http://worldonline.com">world</a>!</html>';
     $allowed_tags = '<u><b>';

     print strip_tags( $string, $allowed_tags );

DESCRIPTION
    HTML::StripTags provides the function strip_tags() that can strip all
    HTML or XML tags from a string except the given allowed tags. This is a
    Perl port of the PHP function strip_tags() based on PHP 5.3.3.

SECURITY NOTE
    Please note: As per <http://htmlpurifier.org/comparison#striptags> PHP's
    strip_tags() is a very basic and unsafe method, so it's strongly
    recommended not to use it for cleaning up user input! As HTML::StripTags
    uses the same state machine, the same applies to this module.

METHODS
  strip_tags()
    A simple little state-machine to strip out html and php tags

    State 0 is the output state, state 1 means we are inside a normal html
    tag, state 2 means we are inside a php tag, state 3 means we are inside
    a "<!--", case 4 means we are inside the following JavaScript/CSS/etc.
    tag.

    When an allow string is passed in we keep track of the string in state 1
    and when the tag is closed check it against the allow string to see if
    we should allow it.

     print strip_tags( $string, "<u><b><?php<?" );

     print strip_tags( $string, ('<u>', '<b>', '<?php', '<?') );

TODO
    Pass in state variable to allow a function like fgetss() to maintain
    state across calls to the function.
    Implement fgetss().

BUGS
    Please report any bugs or feature requests to "<hinnerk at cpan.org>",
    or through the GitHub web interface at
    <http://github.com/hinnerk-a/perl-strip_tags/issues>. I will be
    notified, and then you'll automatically be notified of progress on your
    bug as I make changes.

SUPPORT
    You can find documentation for this module with the perldoc command.

        perldoc HTML::StripTags

    You can also look for information at:

    *   HTML::StripTags Homepage

        <http://www.hinnerk-altenburg.de/perl-strip_tags/>

    *   Code Repository on GitHub

        <http://github.com/hinnerk-a/perl-strip_tags>

    *   GitHub Issue Tracker

        <http://github.com/hinnerk-a/perl-strip_tags/issues>

    *   AnnoCPAN: Annotated CPAN documentation

        <http://annocpan.org/dist/HTML-StripTags>

    *   CPAN Ratings

        <http://cpanratings.perl.org/d/HTML-StripTags>

    *   Search CPAN

        <http://search.cpan.org/dist/HTML-StripTags>

AUTHOR
    Hinnerk Altenburg, "<hinnerk at cpan.org>"
    <http://www.hinnerk-altenburg.de/>

COPYRIGHT & LICENSE
    Copyright (C) 2011 by Hinnerk Altenburg "<hinnerk at cpan.org>"
    <http://www.hinnerk-altenburg.de/>.

    This file is part of HTML::StripTags.

    HTML::StripTags is free software; you can redistribute it and/or modify
    it under the same terms as the Perl 5 programming language system
    itself.

    Terms of the Perl programming language system itself

    a) the GNU General Public License "perlgpl" as published by the Free
    Software Foundation; either version 1, or (at your option) any later
    version, or

    b) the "Artistic License" "perlartistic"" which comes with this Kit.

SEE ALSO
    HTML::Strip, "How do I remove HTML from a string?" in perlfaq9,
    HTML::Parser