HTML to XHTML Converter
来源:互联网 发布:大数据预测性分析 编辑:程序博客网 时间:2024/04/29 08:56
- <?php
- if (!empty($type)) {
-
- if ($type == "path") {
- if (!empty($path)) {
- if (file_exists($path) && is_file($path)) {
- $file = file($path);
- if (substr($file[0],0,9) != "<!DOCTYPE") $doctype=0;
- $file = join('', $file);
- } else {
- die ("No such file.");
- }
- } else {
- die ("No file specified.");
- }
- } elseif ($type == "file") {
- if (!empty($file)) {
-
- } else {
- die ("No file specified.");
- }
- } else {
- die ("No file specified.");
- }
-
- # specify html file, check for doctype
- //$file = file("file.html");
- //if (substr($file[0],0,9) != "<!DOCTYPE") $doctype=1;
- //$file = join('', $file);
- # make tags and properties lower case, close empty elements, quote all properties
- $search = array ("'(<//?)(/w+)([^>]*>)'e",
- "'(<//?)(br|input|meta|link|img)([^>]*)( />)'ie",
- "'(<//?)(br|input|meta|link|img)([^>]*)(/>)'ie",
- "'(<//?)(br|input|meta|link|img)([^>]*)(>)'ie",
- "'(/w+=)(/w+)'ie",
- "'(/w+=)(.+?)'ie");
- $replace = array ("'/Ι'.strtolower('/Κ').'/Λ'",
- "'/Ι/Κ/Λ>'",
- "'/Ι/Κ/Λ>'",
- "'/Ι/Κ/Λ //Μ'",
- "strtolower('/Ι').'/"/Κ/"'",
- "strtolower('/Ι').'/Κ'");
- $file = preg_replace($search, $replace, $file);
-
- # return xhtml-compliant document
- echo "<textarea cols=/"100/" rows=/"20/">";
- if (isset($doctype)) echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">'."/n";
- echo stripslashes(stripslashes(stripslashes($file)));
- echo "</textarea>";
-
- } else {
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
- <head><title>HTML -> XHTML Convertor</title></head>
-
- <body>
- <!-- WARNING: this input method is a security risk on open servers //-->
- <form action="<?=$PHP_SELF?>" method="get">
- <input type="hidden" name="type" value="path" />
- <font face="verdana">File path:</font> <input type="text" name="path" size="50" />
- <input type="submit" value="Submit" />
- </form>
-
- <b><font face="verdana">OR</font></b><br /><br />
-
- <form action="<?=$PHP_SELF?>" method="get">
- <input type="hidden" name="type" value="file" />
- <font face="verdana">File contents:</font><br />
- <textarea name="file" rows="10" cols="50"></textarea><br />
- <input type="submit" value="Submit" />
- </form>
-
- </body>
- </html>
- <?
- }
- ?>