PHP Classes
elePHPant
Icontem

File: character_generator.php

Recommend this page to a friend!
  Classes of Jill Lingoff  >  Sweeper  >  character_generator.php  >  Download  
File: character_generator.php
Role: Auxiliary script
Content type: text/plain
Description: Auxiliary script
Class: Sweeper
Clean HTML to remove unwanted tags and attributes
Author: By
Last change:
Date: 3 months ago
Size: 1,895 bytes
 

Contents

Class file image Download
<meta charset="utf-8" />
<form action="character_generator.php">
Start: <input type="text" name="start" /><br />
End: <input type="text" name="end" /><br />
<input type="submit" />
</form>

<?php

if ($_REQUEST["start"] == "") {
   
$start = 230;
} else {
   
$start = $_REQUEST["start"];
}

if (
$_REQUEST["end"] == "") {
   
$end = 235;
} else {
   
$end = $_REQUEST["end"];
}

$entities_file = "dtd/xhtml1-strict.dtd";
//$entities_file = "dtd/many_entities.dtd";

$entities_code = file_get_contents($entities_file);
$array_entities = explode("\r\n", $entities_code);

print(
"entities file: " . $entities_file . "<br>\r\n");

?>

<table cellpadding="4" cellspacing="0" border="1">
<tr>
<th>Raw</th>
<th>Entity</th>
<th>Decimal-encoded</th>
<th>Hexadecimal-encoded</th>
<th>Letter-encoded</th>
<th>URL-encoded</th>
</tr>

<?php

while($start < $end + 1) {
    print(
"<tr>\r\n");
    print(
"<td>");
   
$raw = html_entity_decode("&#" . $start . ";");
    print(
$raw);
    print(
"</td>\r\n");
    print(
"<td>");
    print(
"&#" . $start . ";");
    print(
"</td>\r\n");
    print(
"<td>");
    print(
htmlentities("&#" . $start . ";"));
    print(
"</td>\r\n");
   
$hex = dechex($start);
    print(
"<td>");
    print(
htmlentities("&#x" . $hex . ";"));
    print(
"</td>\r\n");
    print(
"<td>");
   
// we use something like a .ent lookup for this...
   
foreach($array_entities as $line) {
        if(
preg_match('/<!ENTITY\s*(\w*)\s*"&#' . $start . ';"\s*>/is', $line, $entities_match)) {
            print(
htmlentities("&" . $entities_match[1] . ";"));
            break;
        } elseif(
preg_match('/<!ENTITY\s*(\w*)\s*"&#x[0]*' . $hex . ';"\s*>/is', $line, $entities_match)) {
            print(
htmlentities("&" . $entities_match[1] . ";"));
            break;
        }
    }
    print(
"</td>\r\n");
    print(
"<td>");
    if(
strlen($raw) === 1) {
        print(
urlencode($raw));
    }
    print(
"</td>\r\n");
   
//print("<td>");
    //print(ord($raw) . "\r\n");
    //print("</td>\r\n");
   
print("</tr>\r\n");
   
$start++;
}

?>

</table>