`
alfred_long
  • 浏览: 566250 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PHP iconv 和 mb_convert_encoding 的区别

    博客分类:
  • PHP
 
阅读更多

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中开启此扩展

分享到:
评论

相关推荐

    PHP编码转换函数mb_convert_encoding与iconv用法__1.docx

    `mb_convert_encoding` 和 `iconv` 是两个主要的PHP函数,用于进行字符串编码的转换。这两个函数帮助开发者处理多种字符集之间的兼容性问题,确保数据的正确显示和处理。 `mb_convert_encoding` 函数是PHP的Multi-...

    php编码转换,不需要iconv,mb_convert_encoding

    本文将深入探讨如何在不使用`iconv`和`mb_convert_encoding`函数的情况下进行PHP编码转换。 首先,理解编码的概念是至关重要的。编码是将字符集中的字符映射为数字或二进制表示的过程,常见的字符集有ASCII、ISO-...

    php 转换字符串编码 iconv与mb_convert_encoding的区别说明

    PHP提供了两个主要函数用于字符编码的转换,分别是iconv和mb_convert_encoding。尽管它们都可以完成相似的任务,但是在使用上存在一些差异,这些差异对于选择合适的函数和达到预期的转换效果至关重要。 首先,从...

    PHP编码转换函数mb_convert_encoding与iconv用法_.docx

    本文将详细讨论PHP中的两个编码转换函数`mb_convert_encoding`和`iconv`的使用方法,以及它们在实际场景中的应用。 首先,`mb_convert_encoding`函数用于将字符串`str`的字符编码从`from_encoding`转换到`to_...

    PHP下编码转换函数mb_convert_encoding与iconv的使用说明

    在PHP中,`mb_convert_encoding` 和 `iconv` 是两个专门用于字符编码转换的函数,它们能够帮助开发者解决因字符编码不一致导致的乱码问题。 ### 编码转换概述 在了解`mb_convert_encoding`和`iconv`的具体用法前,...

    PHP mb_convert_encoding文字编码的转换函数介绍

    关于编码转换,除了mb_convert_encoding函数之外,PHP还有另一个函数iconv可供选择。iconv的用法与mb_convert_encoding类似,它们都支持多字节编码转换。但两者在底层实现、默认行为、多字节字符处理、支持的编码...

    PHP中mb_convert_encoding与iconv函数的深入解析

    `mb_convert_encoding`和`iconv`是PHP提供的两个关键函数,用于解决字符编码不匹配的问题,确保数据在不同环境下的正确显示。 `mb_convert_encoding`函数允许开发者将字符串从一种编码转换为另一种编码。其基本语法...

    PHP mb_convert_encoding 获取字符串编码类型实现代码

    这部分内容详细介绍了多字节字符串处理相关的函数及其用法,包括 mb_convert_encoding 和 mb_internal_encoding 等函数的详细说明。通过深入研究手册内容,开发者可以更准确地了解字符编码转换的原理和最佳实践。 4...

    php简繁中文互转类库

    在IT行业中,PHP是一种广泛使用的服务器端脚本语言,尤其在网页开发中有着重要的地位。在处理中文字符集时,可能会遇到简体...同时,对UTF-8编码的理解以及`iconv()`和`mb_convert_encoding()`的用法也是必不可少的。

    php自动获取字符串编码函数mb_detect_encoding

    例如,`iconv`用于在不同编码之间转换字符串,`mb_convert_encoding`也是另一种转换编码的函数,它提供了更多的选项和控制。此外,`preg_replace`等正则表达式函数可用于清理或替换字符串中的特定字符或编码。 在...

    php中url地址栏传参数中文乱码解决方法汇总

    解决 PHP 中 URL 地址栏传参数中文乱码问题可以使用 urlencode()、urldecode()、iconv()、mb_convert_encoding()、mb_internal_encoding()、ob_start()、base64_encode() 等多种方法,每种方法都有其特点和使用场景...

    PHP中iconv函数转码时截断字符问题的解决方法

    针对这一问题,本文将探讨如何在PHP中使用iconv函数和mb_convert_encoding函数来解决字符转码时的截断问题。 首先需要了解的是iconv函数,这是一个用于转换字符编码的函数。iconv支持将字符串从一种编码转换为另一...

    PHP中文乱码解决方案_.docx

    然后,我们可以使用`mb_detect_encoding`来检测字符串的当前编码,并使用`mb_convert_encoding`进行转换。例如,将GBK编码的字符串转换为UTF-8编码: ```php // 检测字符串编码 $encoding = mb_detect_encoding($...

    PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法

    在PHP开发中,经常需要处理不同编码格式的字符串...通过`mb_convert_encoding()`函数,可以轻松实现不同编码间的转换,而mb_string库中的其他函数,如`mb_strpos()`,则为处理多字节字符串提供了更多的灵活性和精确性。

Global site tag (gtag.js) - Google Analytics