php中从mysql读取带有html代码的文字

我在后台添加了一个类似word的插件,把输入的文本信息以html标签加文字的形式存放在mysql中,但是在前台读取时出现问题。读取的文字需要显示在一个div中,属于一个块... 我在后台添加了一个类似word的插件,把输入的文本信息以html标签加文字的形式存放在mysql中,但是在前台读取时出现问题。
读取的文字需要显示在一个div中,属于一个块状里面,不是很大的一块页面,所以读取数来后把我原本页面的版面弄乱了,但是如果我点击“显示更多跳转后的页面会显示正常”,我现在想问怎么在刚开始显示的时候不会乱了版面,谢谢!请教有没有什么好的解决办法?
展开
 我来答
百度网友0f37e23c0
2011-09-07 · TA获得超过1543个赞
知道大有可为答主
回答量:1070
采纳率:50%
帮助的人:1296万
展开全部
你可以先从mysql读取出来作为变量,使用strip_tags过滤掉变量的 html,div等相关的代码,把纯文本内容显示在你的div中,如果内容纯文本过多,你可以截取前面某些汉字 作为内容导读,再超级连接到详细页面!!!

<?php
$str = $vars; //你的mysql读取出来的html变量;
$str = strip_tags($str ); //过滤掉 html,div等相关的代码
echo '<div>'.$str .'</div>'; //显示出纯文本内容;
//或者, 显示前面部分汉字作为导读。
echo '<div>'.substr($str,0, 100) .'</div>'; //显示出前50个纯文本汉字
?>
手机用户39433
2011-09-09 · TA获得超过186个赞
知道答主
回答量:457
采纳率:0%
帮助的人:301万
展开全部
给你两个思路
1,读取出来后,删除所有的html代码
function html2txt($document){
$search = array('@<script[^>]*?>.*?</script>@si', // 去掉脚本
'@<style[^>]*?>.*?</style>@siU', // 去掉css
'@<[\/\!]*?[^<>]*?>@si', // 去掉html
'@<![\s\S]*?--[ \t\n\r]*>@' // 去掉ddt头部
);
$text = preg_replace($search, '', $document);
return $text;
} 这条函数可以做到
2,采用正则表达式匹配中文
$str = "04aol汉字";
$pattern = "/^(\d)([A-Za-z])([".chr(0xa1)."-".chr(0xff)."]+)$/";
if(preg_match($pattern, $str, $tmp))
{
print_r($tmp);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniappucb88517h4h65
2011-09-07 · TA获得超过1343个赞
知道小有建树答主
回答量:446
采纳率:0%
帮助的人:628万
展开全部
读取的时候用PHP strip_tags() 函数把html标签掦除就可以。

参考资料: http://www.w3school.com.cn/php/func_string_strip_tags.asp

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式