当前位置:Gxlcms > PHP教程 > PHPhtmlentities()函数

PHPhtmlentities()函数

时间:2021-07-01 10:21:17 帮助过:7人阅读

之前运用到了一个PHP导出EXCEL的类,里面有一段代码用来过滤字符串里的引号。用到了htmlentities() 函数,后来导出EXCEL的时候又一个字无法导出,感觉很奇怪,所有字都行就只有这个字不行,后来翻查了一下这个函数的相关资料。

定义和用法

htmlentities() 函数把字符转换为 HTML 实体。

htmlentities(string,quotestyle,character-set)

参数 描述
string 必需。规定要转换的字符串。
quotestyle

可选。规定如何编码单引号和双引号。

ENT_COMPAT - 默认。仅编码双引号。 ENT_QUOTES - 编码双引号和单引号。 ENT_NOQUOTES - 不编码任何引号。
character-set

可选。字符串值,规定要使用的字符集。

ISO-8859-1 - 默认。西欧。 ISO-8859-15 - 西欧(增加 Euro 符号以及法语、芬兰语字母)。 UTF-8 - ASCII 兼容多字节 8 比特 Unicode cp866 - DOS 专用 Cyrillic 字符集 cp1251 - Windows 专用 Cyrillic 字符集 cp1252 - Windows 专用西欧字符集 KOI8-R - 俄语 GB2312 - 简体中文,国家标准字符集 BIG5 - 繁体中文 BIG5-HKSCS - Big5 香港扩展 Shift_JIS - 日语 EUC-JP - 日语

原来character-set设置GB2312字符集,无法导出的那个文字是“?”,后来翻查一下,GB2312字符集里面根本就没有“?”字,所以导出来的EXCEL里,含有该字的单元格都为空。

解决方法,character-set设置为UTF-8字符集,这样的话,需要把导出EXCEL的数组也转化成UTF-8字符集。

遇到问题,不要害怕,想办法去解决才是王道。

人气教程排行