您现在的位置是:首页 > 教程 > pbootcms教程pbootcms教程

pbootcms小程序解析页面出现空白解析页面失败的处理方法

龙绍焱2025-02-25 21:37:01pbootcms教程已有6人查阅

导读在pbootcms与小程序互通的过程中,使用的是wxParse进行解析html页面,因为小程序不支持复杂的样式,所以有的时候小程序页面会显示空白等解析失败问题,这里就是为了解决这个问题

在pbootcms与小程序互通的过程中,使用的是wxParse进行解析html页面,因为小程序不支持复杂的样式,所以有的时候小程序页面会显示空白等解析失败问题,这里就是为了解决这个问题
核心思路:
在请求api.php的过程中针对pb返回的页面内容事先通过正则的方式进行去除一些不能解析的代码
处理步骤:
1)在\apps\api\controller\ContentController.php 中添加一行调用解析方法的代码
$data->content = KillStyle($data->content);
2)在\apps\common\function.php 中添加KillStyle方法
function KillStyle($content)
{
//echo"进入KillStyle====";
//var_dump($content);
$content = preg_replace("/STYLE=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/style=.+?['|\"]/i",'',$content);//去除样式
//var_dump($content);
$content = preg_replace("/class=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/id=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/class=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/id=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/lang=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/width=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/height=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/border=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/face=.+?['|\"]/i",'',$content);//去除样式
$content = preg_replace("/face=.+?['|\"]/",'',$content);//去除样式只允许小写正则匹配没有带 i 参数
$content = preg_replace("/<a[^>]*>/i", "", $content);
$content = preg_replace("/<\/a>/i", "", $content);
$content = preg_replace("/<div[^>]*>/i", "", $content);
$content = preg_replace("/<\/div>/i", "", $content);
$content= preg_replace("/<!--[^>]*-->/i", "", $content);//注释内容
$content= preg_replace("/|<\/p>/is","", $content);
$content= preg_replace("/|<\/span>/is","", $content);
$content = preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$content); //过滤script标签
return $content;
}

本文标签:

很赞哦! (0)

暂无内容
暂无内容
暂无内容
暂无内容
留言与评论 (共有 0 条评论)
昵称:
匿名发表 登录账号
         
验证码:
    暂无内容
    暂无内容

相关标签

    暂无内容