PHP项目开发过程中,经常需要对一些特殊字符进行处理,否则这些字符可能无法按输出或输出乱码。下面对HTML标记中的一些常用特殊字符进行转换。q & 转换为 &q " 转换为 "q ' 转换为 'q q > 转换为 >其中,“&”为HTML元素,“&”为显示的字符串。例如,若想在页面正常输出如下代码:明日科技则需要在HTML代码中输入:“明日科技”,否则,将不能按原义输出。PHP提供了下面的函数来自动转换为HTML元素。1.htmlspecialchars()函数该函数可以将某些特定的字符转换成在HTML中的显示方式。语法如下:string htmlspecialchars(string str[,int quote_style[,string charset]]);该函数将特殊字符转成HTML的字符串格式( &....;)。该函数只转换上面列出5种特殊字符。示例:使用htmlspecialchars()函数将留言中特殊字符转成HTML的字符串格式,程序代码如下:$word=":八月-中秋-不送礼,发条短信£祝福£你,&健康快乐&长伴你,¤好运¤和你不分离,还有让我告诉你,$财神¥已经跟随你。"; echo htmlspecialchars("$word"); ?> 本示例的运行结果::八月-中秋-不送礼,发条短信£祝福£你,&健康快乐&长伴你,¤好运¤和你不分离,还有让我告诉你,$财神¥已经跟随你。注意:因为在源代码中加入了htmlspecialchars()函数,所以在留言信息中代码没有被解释执行。2.htmlentities()函数该函数用于把所有的HTML元素转换为显示字符串。语法如下:string htmlentities(string str[,int quote_style[,string charset]]);3.html_entity_decode()函数该函数用于把显示字符串转化为HTML元素。语法如下:string html_entity_decode(string str[,int quote_style[,string charset]]);str:表示原始字符串。quote_style:可选参数,取值范围为如下:q ENT_COMPAT:只转换“&、"、”4种符号。q ENT_QUOTES:只转换“&、'、"、”5种符号。q ENT_NOQ UOTES:只转换“&、”3种符号。charset:指定了在转换过程中应用的字符集。PHP 4.0及以上版本所支持的字符集参数如表1所示。表1 PHP 4.0及以上版本所支持的字符集参数字 符 集别 名说 明ISO-8859-1ISO-8859-1西欧字符集ISO-8859-15ISO-8859-15西欧字符集扩展UTF-8ASCII字符集KOI8-RKoi8-ru,koi8r俄罗斯cp1252Windows-1252,1252西欧字符集,Windows系统默认GB2312936简体中文,国际标准字符集Shift-JISSJIS,932日文EUCJPEUCJP日文示例:使用htmlentities()函数得到一个HTML语句的显示字符串,然后再使用html_entity_decode()函数重新把显示字符串转回HTML元素。程序代码如下:$word="总有许多许多话,想说给你听";echo htmlentities($word,ENT_COMPAT,"GB2312")."";echo html_entity_decode($word);?>本示例的运行结果如下:总有许多许多话,想说给你听总有许多许多话,想说给你听 09-10 06:04