0
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2024-12-22 08:21:52 +00:00
Standards compliant HTML filter written in PHP. http://htmlpurifier.org
Go to file
Tim Düsterhus 1db36fb09d
Fix some PHP 8.2 deprecations (#319)
* Define HTMLPurifier_Lexer::$_entity_parser property

This fixes a PHP 8.2 deprecation.

* Define HTMLPurifier_URIFilterHarness::$filter property

This fixes a PHP 8.2 deprecation.

* Define HTMLPurifier_AttrTransform_NameSync::$idDef property

This fixes a PHP 8.2 deprecation.

* Define HTMLPurifier_AttrTransform_NameSyncTest::$accumulator property

This fixes a PHP 8.2 deprecation.

* Define HTMLPurifier_AttrValidator_ErrorsTest::$language property

This fixes a PHP 8.2 deprecation.

* Define HTMLPurifier_ChildDef_List::$whitespace property

This fixes a PHP 8.2 deprecation.

* Do not modify incoming tokens in RemoveSpansWithoutAttributes

Previously the undefined property `->markForDeletion` was added to the incoming
tokens. This causes a deprecation in PHP 8.2. Fix this by storing to-be-deleted
tokens inside SplObjectStorage. In PHP 8 a WeakMap would be preferable, as that
prevents leaks if `handleEnd` is never called for the token.
2022-06-10 16:30:01 -04:00
.github/workflows PHP 8.1: fix various deprecations/errors in newest version of PHP (#310) 2022-04-08 13:48:12 -04:00
art [2.0.1] Implement haphazard error collection for AttrValidator. 2007-06-27 02:03:15 +00:00
benchmarks .htaccess support apache 2.4+ (#190) 2018-11-11 14:55:13 -05:00
configdoc Release 4.14.0 2021-12-24 20:21:49 -05:00
docs Supported hundreds of nested HTML (#202) 2019-07-14 13:15:31 -04:00
extras PHP 8.1: fix various deprecations/errors in newest version of PHP (#310) 2022-04-08 13:48:12 -04:00
library Fix some PHP 8.2 deprecations (#319) 2022-06-10 16:30:01 -04:00
maintenance Replace flush.php with a shell script, to appease #192 2018-11-11 17:04:11 -05:00
plugins Supported hundreds of nested HTML (#202) 2019-07-14 13:15:31 -04:00
smoketests Mod: using stdClass instead of stdclass 2017-06-02 09:55:46 +08:00
tests Fix some PHP 8.2 deprecations (#319) 2022-06-10 16:30:01 -04:00
.gitattributes Switch to GitHub Actions (#293) 2021-05-21 20:46:13 -04:00
.gitignore Improve gitignore. 2013-10-13 00:18:11 -07:00
composer.json Composer suggestions with extensions (#317) 2022-06-02 23:03:44 -04:00
CREDITS Add vim modelines to all files. 2008-12-06 04:24:59 -05:00
Doxyfile Release 4.14.0 2021-12-24 20:21:49 -05:00
INSTALL Delete references to PHP 5.1 in INSTALL. 2018-11-11 16:56:06 -05:00
INSTALL.fr.utf8 Update PHP version in INSTALL (#195) 2018-10-23 20:03:41 -04:00
LICENSE Add vim modelines to all files. 2008-12-06 04:24:59 -05:00
NEWS Release 4.14.0 2021-12-24 20:21:49 -05:00
package.php Add doxygen doc scripts, and fix package.php 2009-07-08 22:11:15 -04:00
phpdoc.ini Add vim modelines to all files. 2008-12-06 04:24:59 -05:00
README.md PHP 8 Support (#297) 2021-07-20 09:40:50 -04:00
test-settings.sample.php Update to work with Git version of SimpleTest. 2016-03-24 00:08:03 -07:00
test-settings.travis.php Travis support. 2016-10-27 02:00:47 -07:00
TODO Release 4.8.0 2016-07-16 05:58:58 -07:00
update-for-release Release 4.13.0 2020-06-28 20:56:53 -04:00
VERSION Release 4.14.0 2021-12-24 20:21:49 -05:00
WHATSNEW Release 4.14.0 2021-12-24 20:21:49 -05:00
WYSIWYG Add vim modelines to all files. 2008-12-06 04:24:59 -05:00

HTML Purifier Build Status

HTML Purifier is an HTML filtering solution that uses a unique combination of robust whitelists and aggressive parsing to ensure that not only are XSS attacks thwarted, but the resulting HTML is standards compliant.

HTML Purifier is oriented towards richly formatted documents from untrusted sources that require CSS and a full tag-set. This library can be configured to accept a more restrictive set of tags, but it won't be as efficient as more bare-bones parsers. It will, however, do the job right, which may be more important.

Places to go:

  • See INSTALL for a quick installation guide
  • See docs/ for developer-oriented documentation, code examples and an in-depth installation guide.
  • See WYSIWYG for information on editors like TinyMCE and FCKeditor

HTML Purifier can be found on the web at: http://htmlpurifier.org/

Installation

Package available on Composer.

If you're using Composer to manage dependencies, you can use

$ composer require ezyang/htmlpurifier