$value) { if (!strncmp($key, 'Null_', 5) && !empty($value)) { unset($get[substr($key, 5)]); unset($get[$key]); } } @$config->loadArray($get); /* // sample local definition, obviously needs to be less clunky $html_definition =& $config->getHTMLDefinition(true); $module = new HTMLPurifier_HTMLModule(); $module->name = 'Marquee'; $module->info['marquee'] = new HTMLPurifier_ElementDef(); $module->info['marquee']->content_model = '#PCDATA | Inline'; $module->info['marquee']->content_model_type = 'optional'; $module->content_sets = array('Inline' => 'marquee'); $html_definition->manager->addModule($module); */ $printer_html_definition = new HTMLPurifier_Printer_HTMLDefinition(); $printer_css_definition = new HTMLPurifier_Printer_CSSDefinition(); echo ''; ?> HTML Purifier Printer Smoketest

HTML Purifier Printer Smoketest

HTML Purifier claims to have a robust yet permissive whitelist: this page will allow you to see precisely what HTML Purifier's internal whitelist is. You can also twiddle with the configuration settings to see how a directive influences the internal workings of the definition objects.

Modify configuration

You can specify an array by typing in a comma-separated list of items, HTML Purifier will take care of the rest (including transformation into a real array list or a lookup table).

getBatch('HTML'); // can't handle hashes foreach ($directives as $key => $value) { $directive = "HTML.$key"; if (is_array($value)) { $keys = array_keys($value); if ($keys === array_keys($keys)) { $value = implode(',', $keys); } else { $new_value = ''; foreach ($value as $name => $bool) { if ($bool !== true) continue; $new_value .= "$name,"; } $value = rtrim($new_value, ','); } } $allow_null = $config->def->info['HTML'][$key]->allow_null; ?>
checked="checked" />   checked="checked" /> checked="checked" /> or
/>
[Reset]

* Some configuration directives make a distinction between an empty variable and a null variable. A whitelist, for example, will take an empty array as meaning no allowed elements, while checking Null/Disabled will mean that user whitelisting functionality is disabled.

Definitions

Parent of Fragment
HTML that HTML Purifier does not live in a void: when it's output, it has to be placed in another element by means of something like <element> <?php echo $html ?> </element>. The parent in this example is element.
Strict mode
Whether or not HTML Purifier's output is Transitional or Strict compliant. Non-strict mode still actually a little strict and converts many deprecated elements.
#PCDATA
Literally Parsed Character Data, it is regular text. Tags like ul don't allow text in them, so #PCDATA is missing.
Tag transform
A tag transform will change one tag to another. Example: font turns into a span tag with appropriate CSS.
Attr Transform
An attribute transform changes a group of attributes based on one another. Currently, only lang and xml:lang use this hook, to synchronize each other's values. Pre/Post indicates whether or not the transform is done before/after validation.
Excludes
Tags that an element excludes are excluded for all descendants of that element, and not just the children of them.
Name(Param1, Param2)
Represents an internal data-structure. You'll have to check out the corresponding classes in HTML Purifier to find out more.

HTMLDefinition

render($config) ?>

CSSDefinition

render($config) ?>