◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
平常写文章都是TXT的纯文本,如果希望把它们都变成自动加入标签的html代码,虽然网上有很多工具可以实现,但不够理想,更不太方便,所以写了这个程,希望能够帮助到你。
代码如下:
<?php
$content=file_get_contents("1.txt");
$arr_hang=explode(" ",$content);
if($arr_hang){
echo "<div> ";
foreach($arr_hang as $lie){
list($name,)=explode(",",$lie);
echo "<p>{$name}</p> ";
}
echo "</div> ";
}
?>访问密码: 8823,解压密码:zhusir
说明:代码中1.txt就是当前目录中的纯文本文件。把上面的代码制作到记事本中,另存为PHP文件,与1.txt同一目录,只需要运行这个PHP文件,就可以实现txt文件到html网页文件的转换,前提是你要有本地PHP环境,不懂的可以搜索我的文章,有相关教程。
怎样查看:
运行PHP文件后,会自动加载同目录的txt文件,只需要右键“查看网页源代码”就可以看到已经加入标签的文字,复制下来即可用于其他用途。360浏览器可以在地址栏中输入:view-source:+网址实现,谷歌浏览器也相同。
下面以我第一篇文章保存为例子,运行一下看看。
当然,上面的代码还是比较简单,如果真正的使用起来,还是觉得有点不尽人意,接下来我将给出一组相对复杂,但功能更强大的代码。
这组代码有一个文本框,可以让用户自由的输入文字,输入完成后,只需要点击“生成html”即可转换成html代码。
如果当你不想直接输入文字或者有文本文件时,可以通过“选择文件”进行上传,再点击“生成html”按键,同样也可以自动生成html代码。
在这段代码中,我还加入了txt文本文件的编码转换,因为不同的编码所产生的文字内容会出现乱码,加入这个功能后,就不会出现乱码问题。
为了让大家使用起来不那么复杂,所以我还加入了将html生成在另一个文本框中的功能,同时加上兼容性更强大的复制按钮,真正实现一键复制,不需要像上面基础代码那样去查看源代码。
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>HTML代码生成器</title>
<style type="text/css">
.marginTop100 { margin-top: 100px; display: block; }
</style>
<script type="text/javascript">
function copyHtmlContent() {
var contentBox = document.getElementById("htmlCode");
contentBox.select();
contentBox.setSelectionRange(0, 99999); // For mobile devices
try {
var successful = document.execCommand('copy');
var msg = successful ? '成功复制到剪贴板' : '无法复制内容';
alert(msg);
} catch (err) {
alert('Oops, 无法执行复制命令: ', err);
}
}
</script>
</head>
<body>
<h2>HTML代码生成器</h2>
<?php
// 检查是否有表单提交
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$content = '';
// 检查是否有文件上传
if (isset($_FILES['file']) && $_FILES['file']['error'] === UPLOAD_ERR_OK) {
// 读取上传的文件内容
$fileContent = file_get_contents($_FILES['file']['tmp_name']);
// 检测文件编码并转换为 UTF-8
$encoding = mb_detect_encoding($fileContent, ['UTF-8', 'GB2312', 'GBK', 'ISO-8859-1'], true);
if ($encoding !== 'UTF-8') {
$content = mb_convert_encoding($fileContent, 'UTF-8', $encoding);
} else {
$content = $fileContent;
}
} elseif (!empty($_POST['content'])) {
// 获取用户输入的文本内容
$content = $_POST['content'];
}
// 如果内容不为空,生成 HTML
if (!empty($content)) {
// 将内容按回车符分割成段落
$paragraphs = explode("\n", $content);
// 开始收集HTML内容
$htmlOutput = "<div style=\"text-indent: 2em;\">\n"; // 使用转义字符
foreach ($paragraphs as $paragraph) {
// 去除段落两端的空白字符
$paragraph = trim($paragraph);
if (!empty($paragraph)) {
$htmlOutput .= " <p>{$paragraph}</p>\n"; // 添加换行符和缩进
}
}
$htmlOutput .= "</div>\n"; // 添加换行符
// 输出HTML到文本区域
echo '<textarea cols="80" rows="10" id="htmlCode">';
echo htmlspecialchars($htmlOutput); // 确保HTML安全地输出到文本区域
echo '</textarea>';
// 复制HTML代码按钮
echo '<br><input type="button" onClick="copyHtmlContent()" value="点击复制" />';
// 添加分隔符
echo '<hr>';
// 版权声明,带有200像素的顶部边距
echo '<div><strong>本程序制作:<a href="http://www.zhu-sir.com/">祝先生的博客</a></strong></div>';
} else {
echo "<p>请输入内容或上传文件。</p>\n"; // 添加换行符
}
} else {
// 显示输入表单
echo '
<form method="post" action="" enctype="multipart/form-data">
<label for="content">直接输入文本内容:</label><br>
<textarea name="content" rows="10" cols="80"></textarea><br><br>
<label for="file">或上传 TXT 文件:</label><br>
<input type="file" name="file" accept=".txt"><br><br>
<input type="submit" value="生成HTML">
</form>
';
// 或者在这里也添加版权声明,如果需要的话
echo '<hr>';
echo '<div><strong>本程序制作:<a href="http://www.zhu-sir.com/">祝先生的博客</a></strong></div>';
}
?>
</body>
</html>你可能想看:
喜欢这篇文章的读者还看了以下文章!
