• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

HTML to XHTML Converter

发布: 2007-7-14 19:53 | 作者: 佚名    | 来源: 网络转载     | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网 <?

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 ("'\\1'.strtolower('\\2').'\\3'",
                   "'\\1\\2\\3>'",
                   "'\\1\\2\\3>'",
                   "'\\1\\2\\3 /\\4'",
                   "strtolower('\\1').'\"\\2\"'",
                   "strtolower('\\1').'\\2'");
$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>
<?
}
?>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网