Support flashvars.
[htmlpurifier.git] / library / HTMLPurifier / EntityLookup.php
blobb4dfce94c3852a21162e588e69b87e4062af23a8
1 <?php
3 /**
4 * Object that provides entity lookup table from entity name to character
5 */
6 class HTMLPurifier_EntityLookup {
8 /**
9 * Assoc array of entity name to character represented.
11 public $table;
13 /**
14 * Sets up the entity lookup table from the serialized file contents.
15 * @note The serialized contents are versioned, but were generated
16 * using the maintenance script generate_entity_file.php
17 * @warning This is not in constructor to help enforce the Singleton
19 public function setup($file = false) {
20 if (!$file) {
21 $file = HTMLPURIFIER_PREFIX . '/HTMLPurifier/EntityLookup/entities.ser';
23 $this->table = unserialize(file_get_contents($file));
26 /**
27 * Retrieves sole instance of the object.
28 * @param Optional prototype of custom lookup table to overload with.
30 public static function instance($prototype = false) {
31 // no references, since PHP doesn't copy unless modified
32 static $instance = null;
33 if ($prototype) {
34 $instance = $prototype;
35 } elseif (!$instance) {
36 $instance = new HTMLPurifier_EntityLookup();
37 $instance->setup();
39 return $instance;
44 // vim: et sw=4 sts=4