我想通过过滤器运行文本以确保它都是 UTF-8 编码的。使用 PHP 执行此操作的推荐方法是什么?
polotek99
问问题
731 次
5 回答
2
你的问题不清楚,你是不是想编码一些东西?如果是这样utf8_encode是你的朋友。您是否试图确定它是否不需要编码?如果是这样,utf8_encode仍然是您的朋友,因为您可以检查结果是否与输入相同!
于 2008-09-17T04:22:44.203 回答
1
在此处检查多字节字符串函数
于 2008-09-17T04:27:00.387 回答
0
你需要知道你的输入字符串是用什么字符集编码的,否则这将无济于事。
如果你想正确地做到这一点,这篇文章可能会有所帮助:每个软件开发人员绝对、肯定必须了解 Unicode 和字符集的绝对最低要求(没有借口!)
于 2008-09-17T04:31:24.383 回答
0
给定一个字节流,你必须知道它是从什么编码开始的——电子邮件使用 mime 标头指定编码,http 使用 http 标头指定编码。此外,您可以在网页的元标记中指定编码,但并非总是如此。
无论如何,一旦您知道要转换的编码,请使用iconv将其转换为 utf8。查看 php 文档的 iconv 部分,那里有很多很好的信息。
啊,托马斯发布了我正在寻找的链接。必读。
于 2008-09-17T04:32:06.910 回答
0
检查UTF-8有效性的最简单方法:
如果只允许一行:
preg_match('/^.*$/Du', $value)
如果允许多行:
preg_match('/^.*$/sDu', $value)
这适用于PHP >= 4.3.5,并且不需要任何非默认 PHP 模块。
于 2008-09-17T14:16:57.800 回答