我使用MySQL和PHP来填充网站的某些部分,通常使用存储在TEXT字段中的HTML。我希望保持HTML缩进,以便源简洁易读,例如:
<body>
<div>
<p>Blahblah</p>
</div>
</body>
然而,当从MySQL中提取HTML时,我最终得到:
<body>
<div>
<p>Blahblahblah</p>
</div>
</body>
当有大量HTML插入显着缩进的DIV时,这非常难看。我怎么能阻止这种情况发生?仅供参考,我使用wordwrap()来保持每一行不会太长。
答案 0 :(得分:2)
您可以使用PHP手动缩进行:
$tabs = 4;
echo str_repeat(chr(9), $tabs) . str_replace(chr(10), chr(10) . str_repeat(chr(9), $tabs), $text);
如果您不希望第一行缩进,也可以删除第一个str_repeat(chr(9), $tabs) .
。
答案 1 :(得分:0)
您使用哪种数据类型将HTML存储在数据库中?我怀疑你使用的是VARCHAR,但是BLOB会更好。
一个简单的解决方法是在HTML中使用空格而不是制表符。似乎数据库忽略了\ t字符。