让我们从数据库表中的这个html开始:
import errno
try:
with open('/dev/tty', 'w') as tty:
tty.write('prompt> ')
except IOError as exc:
if exc.errno == errno.ENXIO:
pass # no /dev/tty available
else:
pass # something else went wrong
这是我在通过DOM脚本运行后显示的样子:
<section id="love">
<h2 class="h2Article">III. Love</h2>
<div class="divArticle">
这就是我希望它看起来像这样:
<section id="love"><h2 class="h2Article" id="a3" data-toggle="collapse" data-target="#b3">III. Love</h2>
<div class="divArticle collapse in article" id="b3">
换句话说,DOM给了它必要的功能,正确地为每个id顺序编号。所有缺少的是造型:
<section id="love"><h2 class="h2Article" id="a3" data- toggle="collapse" data-target="#b3">
<span class="Article label label-primary">
<i class="only-collapsed fa fa-chevron-down"></i>
<i class="only-expanded fa fa-remove"></i> III. Love</span></h2>
<div class="divArticle collapse in article" id="b3">
有谁能告诉我如何添加样式?当然,标题会改变(例如III.Love,IV.Hate等)。我在下面发布了我的DOM脚本:
<span class="Article"><span class="label label-primary"><i class="only- collapsed fa fa-chevron-down"></i><i class="only-expanded fa fa-remove"> </i> III. Love</span></span>
答案 0 :(得分:1)
由于在这种情况下正在使用DOM Document对象,因此createElement函数可用于添加HTML。
请参阅http://php.net/manual/en/domdocument.createelement.php
从附页上的文档中窃取
<?php
$dom = new DOMDocument('1.0', 'utf-8');
$element = $dom->createElement('test', 'This is the root element!');
// We insert the new element as root (child of the document)
$dom->appendChild($element);
echo $dom->saveXML();
?>
将输出
<?xml version="1.0" encoding="utf-8"?>
<test>This is the root element!</test>
如果没有DOM对象,通常可以通过以下方式之一添加PHP。
1
echo "<div>this method is often used for shorter pieces of HTML</div>";
2
?> <div> You can also escape out of HTML and then "turn" PHP back on like this </div> <?php
第一种方法使用echo命令输出HTML字符串。第二种方法使用
?>
转义标记告诉计算机开始将所有内容视为HTML,直到它看到另一个开放的<?php
PHP标记。
通常在PHP文件中,您可以像这样添加HTML。
?>
<span class="Article">
<span class="label label-primary">
<i class="only- collapsed fa fa-chevron-down"></i>
<i class="only-expanded fa fa-remove"></i>
III. Love
</span>
</span>
<?php
但是,在这种情况下,我们正在尝试编辑来自数据库内部的内容,但我们无法做到这一点。
答案 1 :(得分:0)
嗯,我想明显的解决办法是将标题包装成可以用简单的str_replace修改的内容......
<h2><span class="Answer">IIII. Love</span></h2>
甚至这个......
<h2>[]III. Love[]</h2>
有点米老鼠,但它完成了工作。我只需将所有代码写出或粘贴到每篇文章的每个标题中。我更喜欢尽可能地自动化它。