PHP在字符转码时常用到 iconv 函数,但是在某次转码中遇到了个问题;
例:
$str = '今天天气-晴';
$str = iconv('UTF-8','GBK',$str,);
转码以后 $str 确只有 '今天天气晴',查找手册发现,iconv第二个参数可以添加两个后缀,
//TRANSLIT 会自动将不能直接转化的字符变成一个或多个近似的字符,
//IGNORE 会忽略掉不能转化的字符,而默认效果是从第一个非法字符截断。
使用:
1. 发现iconv在转换字符"-"到gb2312时会出错,如果没有ignore参数,所有该字符后面的字符串都无法被保存。不管怎么样,这个"-"都无法转换成功,无法输出。 另外mb_convert_encoding没有这个bug.
2. mb_convert_encoding 可以指定多种输入编码,它会根据内容自动识别,但是执行效率比iconv差太多;
3. 一般情况下用 iconv,只有当遇到无法确定原编码是何种编码,或者iconv转化后无法正常显示时才用mb_convert_encoding 函数.
注意:使用mb_convert_encoding 需要php.ini中开启此扩展
相关推荐
`mb_convert_encoding` 和 `iconv` 是两个主要的PHP函数,用于进行字符串编码的转换。这两个函数帮助开发者处理多种字符集之间的兼容性问题,确保数据的正确显示和处理。 `mb_convert_encoding` 函数是PHP的Multi-...
本文将深入探讨如何在不使用`iconv`和`mb_convert_encoding`函数的情况下进行PHP编码转换。 首先,理解编码的概念是至关重要的。编码是将字符集中的字符映射为数字或二进制表示的过程,常见的字符集有ASCII、ISO-...
PHP提供了两个主要函数用于字符编码的转换,分别是iconv和mb_convert_encoding。尽管它们都可以完成相似的任务,但是在使用上存在一些差异,这些差异对于选择合适的函数和达到预期的转换效果至关重要。 首先,从...
本文将详细讨论PHP中的两个编码转换函数`mb_convert_encoding`和`iconv`的使用方法,以及它们在实际场景中的应用。 首先,`mb_convert_encoding`函数用于将字符串`str`的字符编码从`from_encoding`转换到`to_...
在PHP中,`mb_convert_encoding` 和 `iconv` 是两个专门用于字符编码转换的函数,它们能够帮助开发者解决因字符编码不一致导致的乱码问题。 ### 编码转换概述 在了解`mb_convert_encoding`和`iconv`的具体用法前,...
关于编码转换,除了mb_convert_encoding函数之外,PHP还有另一个函数iconv可供选择。iconv的用法与mb_convert_encoding类似,它们都支持多字节编码转换。但两者在底层实现、默认行为、多字节字符处理、支持的编码...
`mb_convert_encoding`和`iconv`是PHP提供的两个关键函数,用于解决字符编码不匹配的问题,确保数据在不同环境下的正确显示。 `mb_convert_encoding`函数允许开发者将字符串从一种编码转换为另一种编码。其基本语法...
这部分内容详细介绍了多字节字符串处理相关的函数及其用法,包括 mb_convert_encoding 和 mb_internal_encoding 等函数的详细说明。通过深入研究手册内容,开发者可以更准确地了解字符编码转换的原理和最佳实践。 4...
在IT行业中,PHP是一种广泛使用的服务器端脚本语言,尤其在网页开发中有着重要的地位。在处理中文字符集时,可能会遇到简体...同时,对UTF-8编码的理解以及`iconv()`和`mb_convert_encoding()`的用法也是必不可少的。
例如,`iconv`用于在不同编码之间转换字符串,`mb_convert_encoding`也是另一种转换编码的函数,它提供了更多的选项和控制。此外,`preg_replace`等正则表达式函数可用于清理或替换字符串中的特定字符或编码。 在...
解决 PHP 中 URL 地址栏传参数中文乱码问题可以使用 urlencode()、urldecode()、iconv()、mb_convert_encoding()、mb_internal_encoding()、ob_start()、base64_encode() 等多种方法,每种方法都有其特点和使用场景...
针对这一问题,本文将探讨如何在PHP中使用iconv函数和mb_convert_encoding函数来解决字符转码时的截断问题。 首先需要了解的是iconv函数,这是一个用于转换字符编码的函数。iconv支持将字符串从一种编码转换为另一...
然后,我们可以使用`mb_detect_encoding`来检测字符串的当前编码,并使用`mb_convert_encoding`进行转换。例如,将GBK编码的字符串转换为UTF-8编码: ```php // 检测字符串编码 $encoding = mb_detect_encoding($...
在PHP开发中,经常需要处理不同编码格式的字符串...通过`mb_convert_encoding()`函数,可以轻松实现不同编码间的转换,而mb_string库中的其他函数,如`mb_strpos()`,则为处理多字节字符串提供了更多的灵活性和精确性。