能用PHP 去掉所有html标签里的部分属性吗?只要保留<a>标签里的超链接即可!

能用PHP 去掉所有html标签里的部分属性吗?只要保留<a>标签里的超链接即可!,第1张

<?php

$file='<div id="m"><p id="lg"><img src="../img/baidu_sylogo1.gif" width="27px" height="12px" usemap="#mp"><map name="mp"><a shape="rect" coords="40,25,230,95" href="../yuanso/index.html" target="_blank" title="点此进入空间" ></map></p><p id="nv"><a href="../yuanso/index1.html">文字1</a> <b>文字2</b> <a href="../yuanso/index3.html">文字3</a></p></div>

'

$del=array("/name=.+?['|\"]/i","/src=.+?['|\"]/i","/id=.+?['|\"]/i","/width=.+?['|\"]/i","/height=.+?['|\"]/i","/usemap=.+?['|\"]/i","/shape=.+?['|\"]/i","/coords=.+?['|\"]/i","/target=.+?['|\"]/i","/title=.+?['|\"]/i")

$file = preg_replace($del,"",$file)//去除style样式

$file = str_replace(" ","",$file)//去除所有空格

$file = str_replace("<ahref=","<a href=",$file)//还原空格

echo $file

?>

添加文章时生成HTML静态页面 但如果要删除文章 添加文章时生成的HTML静态页面也应该同时删除掉 否则就成了冗余文件 所以我们应该在删 除没用的文章时 同时删除掉已生成的HTML静态页面 下面来看看PHP文章系统里面如何同时删除掉生成的HTML静态页面 这里只是一个简单的原理系 统 可以作为一个参考 更成熟系统可以参考比较成熟的CMS系统 下面是源码文件

ob_start()

require_once(" /inc/conn php")

$id=$_GET["id"]

$path=$_GET["path"]

$sql="delete from newscontent where newsid=$id"

mysql_query($sql)

if(file_exists(" /newslist/$path"))

{

unlink(" /newslist/$path")

$foldername=substr($path )

$folder=fopen(" /newslist/$foldername")

$n=

while($f=readdir($folder))

{

if($f<>" " &&$f<>" ")

{

$n++

}

}

closedir()

if($n== )

{

rmdir(" /newslist/$foldername")

}

}

header("location:del php")

?>

这些代码比较容易理解 ob_start()开启缓存 require_coce(" /conn php")包含数据库连接文件 下面的变 量$id $path都是接受传过来的页面 这两个值是在列表页面里面传递过来的 再往下执行的是SQL的删除语句 先将数据库里面的文章进行删除掉 下 面的if语句是删除静态页面的重要判断语句 如果$path存在的话 用unlink删除掉 而这里的while语句是读取的目录 不需要深入理解

lishixinzhi/Article/program/PHP/201311/20910

PHP 中有个 strip_tags 函数可以方便地去除 HTML 标签。

echo strip_tags(“Hello <bWorld</b”)// 去除 HTML、XML 以及 PHP 的标签。

对于非标准的 HTML 代码也能正确的去除:


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7218097.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存