您正在使用 IPV4 [18.97.14.91] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
[公益]保护绿色环境,构建和谐社会      

【腾讯云】2核2G云服务器新老同享 99元/年,续费同价,云服务器3年机/5年机限时抢购,低至 2.5折      
[公益] 地球是我家,绿化靠大家      
2024年 冬至节 013
2025年 高 考 181
2025年 元 旦 024
2025年 春 节 052
 
您现在的位置:首页 >> PHP >> 内容
本类新增
本类热门
php将html转成wml的WAP标记语言实例
内容摘要: ?php//---------------------------------------//Html标记WAP语言//----------------------------------------functionhtml2wml($content){//保留图片preg_match_all('/img([^]*)/isU',$content,$imgar......
<?php

//---------------------------------------

//Html标记WAP语言

//----------------------------------------

functionhtml2wml($content)

{

//保留图片

preg_match_all("/<img([^>]*)>/isU",$content,$imgarr);

if(isset($imgarr[0])&&count($imgarr[0])>0)

{

foreach($imgarr[0]as$k=>$v)$content=str_replace($v,"WAP-IMG::{$k}",$content);

}

//过滤掉样式表和脚本

$content=preg_replace("/<style.*?<\\/style>/is","",$content);

$content=preg_replace("/<script.*?<\\/script>/is","",$content);

//首先将各种可以引起换行的标签(如<br/>、<p>之类)替换成换行符"\\n"

$content=preg_replace("/<br\\s*\\/?\\/>/i","\\n",$content);

$content=preg_replace("/<\\/?p>/i","\\n",$content);

$content=preg_replace("/<\\/?td>/i","\\n",$content);

$content=preg_replace("/<\\/?div>/i","\\n",$content);

$content=preg_replace("/<\\/?blockquote>/i","\\n",$content);

$content=preg_replace("/<\\/?li>/i","\\n",$content);

//将"&nbsp;"替换为空格

$content=preg_replace("/\\&nbsp\\;/i","",$content);

$content=preg_replace("/\\&nbsp/i","",$content);

//过滤掉剩下的HTML标签

$content=strip_tags($content);

//将HTML中的实体(entity)转化为它所对应的字符

$content=html_entity_decode($content,ENT_QUOTES,"GB2312");

//过滤掉不能转化的实体(entity)

$content=preg_replace('/\\&\\#.*?\\;/i','',$content);

//上面是将HTML网页内容转化为带换行的纯文本,下面是将这些纯文本转化为WML。

$content=str_replace('$','$$',$content);

$content=str_replace("\\r\\n","\\n",htmlspecialchars($content));

$content=explode("\\n",$content);

for($i=0;$i<count($content);$i++)

{

$content[$i]=trim($content[$i]);

//如果去掉全角空格为空行,则设为空行,否则不对全角空格过滤。

if(str_replace('','',$content[$i])=='')$content[$i]='';

}

$content=str_replace("<p><br/></p>\\n","",'<p>'.implode("<br/></p>\\n<p>",$content)."<br/></p>\\n");

//还原图片

if(isset($imgarr[0])&&count($imgarr[0])>0)

{

foreach($imgarr[0]as$k=>$v)

{

$attstr=(preg_match('#/$#',$imgarr[1][$k]))?'<img'.$imgarr[1][$k].'>':'<img'.$imgarr[1][$k].'/>';

$content=str_replace("WAP-IMG::{$k}",$attstr,$content);

}

}

$content=preg_replace("/&amp;[a-z]{3,10};/isU",'',$content);

return$content;

}

functiontext2wml($content)

{

$content=str_replace('$','$$',$content);

$content=str_replace("\\r\\n","\\n",htmlspecialchars($content));

$content=explode("\\n",$content);

for($i=0;$i<count($content);$i++)

{

//过滤首尾空格

$content[$i]=trim($content[$i]);

//如果去掉全角空格为空行,则设为空行,否则不对全角空格过滤。

if(str_replace("","",$content[$i])=="")$content[$i]="";

}

//合并各行,转化为WML,并过滤掉空行

$content=str_replace("<p><br/></p>\\n","","<p>".implode("<br/></p>\\n<p>",$content)."<br/></p>\\n");

return$content;

}

?>

版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:使用PHP获取网络文件的实现代码

 

下一篇:php获取地址栏信息的代码

发布日期:2023/6/30
手机扫二维码直达本页
发布时间:11:13:54
点  击:22
录  入:齐天大圣
相关文章
Baidu
YiJiaCMS 7.5.5 build241121(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,Cloudflare提供加速防护
运行时间载入中.....