pbootcms小程序解析页面出现空白或者解析页面失败的问题

背景:在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;
    }

栗子:

pc网站:

http://www.mybancai.cn/industry/107.html

 

 


上面红圈部分,基本上是直接解析不了的

小程序页面:

https://b5u7wv.smartapps.cn/pages/news-detail/news-detail?id=107



 

posted @ 2022-03-04 15:21  玄之又玄众妙之门  阅读(223)  评论(0)    收藏  举报

哦哦查

研学服务

知芽网

醉学网