PHP之mb_convert_encoding使用
mb_convert_encoding
- (PHP 4 >= 4.0.6, PHP 5, PHP 7)
- mb_convert_encoding — Convert character encoding
- mb_convert_encoding — 转换字符的编码
Description
string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding = mb_internal_encoding() ] )
//Converts the character encoding of string str to to_encoding from optionally from_encoding.
Parameters
str
- The string being encoded.
- 要编码的 string。
to_encoding
- The type of encoding that str is being converted to.
- str 要转换成的编码类型。
from_encoding
- Is specified by character code names before conversion. It is either an array, or a comma separated enumerated list. If from_encoding is not specified, the internal encoding will be used.
- 在转换前通过字符代码名称来指定。它可以是一个 array 也可以是逗号分隔的枚举列表。 如果没有提供 from_encoding,则会使用内部(internal)编码。
Return Values
- The encoded string.
- 编码后的 string。
Examples
<?php
/**
* Created by PhpStorm.
* User: zhangrongxiang
* Date: 2018/1/28
* Time: 下午10:34
*/
$str = "Hello World\n";
/* Convert internal character encoding to SJIS */
$str = mb_convert_encoding( $str, "SJIS" );
echo "1---" . $str; //1---Hello World
$str = "Hello World\n";
/* Convert EUC-JP to UTF-7 */
$str = mb_convert_encoding( $str, "UTF-7", "EUC-JP" );
echo "2---" . $str; //2---Hello World
$str = "Hello World\n";
/* Auto detect encoding from JIS, eucjp-win, sjis-win, then convert str to UCS-2LE */
$str = mb_convert_encoding( $str, "UCS-2LE", "JIS, eucjp-win, sjis-win" );
echo "3---" . $str; //3---H�e�l�l�o� �W�o�r�l�d�
$str = "Hello World\n";
/* "auto" is expanded to "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
$str = mb_convert_encoding( $str, "EUC-JP", "auto" );
echo "4---" . $str; ///�4---Hello World
/**遍历字符集 */
$text = "A strange string to pass, maybe with some ø, æ, å characters. Hello 中国";
foreach ( mb_list_encodings() as $chr ) {
/**其他字符集转换成UTF-8输出*/
echo $chr . " :" . mb_convert_encoding( $text, 'UTF-8', $chr ) . PHP_EOL;
/**UTF-8转换成其他字符集输出*/
echo $chr . " :" . mb_convert_encoding( $text, $chr, 'UTF-8' ) . PHP_EOL;
}
/**强制浏览器输出UTF-8编码字符串*/
header( "content-Type: text/html; charset=Utf-8" );//在所有输出之前输出有效
echo mb_convert_encoding( "你是我的好朋友", "UTF-8", "GBK" );
/**支持的字符编码*/
//UCS-4*
//UCS-4BE
//UCS-4LE*
//UCS-2
//UCS-2BE
//UCS-2LE
//UTF-32*
//UTF-32BE*
//UTF-32LE*
//UTF-16*
//UTF-16BE*
//UTF-16LE*
//UTF-7
//UTF7-IMAP
//UTF-8*
//ASCII*
//EUC-JP*
//SJIS*
//eucJP-win*
//SJIS-win*
//ISO-2022-JP
//ISO-2022-JP-MS
//CP932
//CP51932
//SJIS-mac** (别名: MacJapanese)
//SJIS-Mobile#DOCOMO** (别名: SJIS-DOCOMO)
//SJIS-Mobile#KDDI** (别名: SJIS-KDDI)
//SJIS-Mobile#SOFTBANK** (别名: SJIS-SOFTBANK)
//UTF-8-Mobile#DOCOMO** (别名: UTF-8-DOCOMO)
//UTF-8-Mobile#KDDI-A**
//UTF-8-Mobile#KDDI-B** (别名: UTF-8-KDDI)
//UTF-8-Mobile#SOFTBANK** (别名: UTF-8-SOFTBANK)
//ISO-2022-JP-MOBILE#KDDI** (别名: ISO-2022-JP-KDDI)
//JIS
//JIS-ms
//CP50220
//CP50220raw
//CP50221
//CP50222
//ISO-8859-1*
//ISO-8859-2*
//ISO-8859-3*
//ISO-8859-4*
//ISO-8859-5*
//ISO-8859-6*
//ISO-8859-7*
//ISO-8859-8*
//ISO-8859-9*
//ISO-8859-10*
//ISO-8859-13*
//ISO-8859-14*
//ISO-8859-15*
//ISO-8859-16*
//byte2be
//byte2le
//byte4be
//byte4le
//BASE64
//HTML-ENTITIES
//7bit
//8bit
//EUC-CN*
//CP936
//GB18030**
//HZ
//EUC-TW*
//CP950
//BIG-5*
//EUC-KR*
//UHC (CP949)
//ISO-2022-KR
//Windows-1251 (CP1251)
//Windows-1252 (CP1252)
//CP866 (IBM866)
//KOI8-R*
//KOI8-U*
//ArmSCII-8 (ArmSCII8)
// * 表示该编码也可以在正则表达式中使用。
// ** 表示该编码自 PHP 5.4.0 始可用。
//任何接受编码名称的 php.ini 条目同样也可以使用 "auto" 和 "pass" 的值。 接受编码名的 mbstring 函数同样也可以使用值 "auto"。
//如果设置了 "pass",将不会对字符的编码进行转化。
//如果设置了 "auto",它将扩展成 NLS 中定义的每个字符编码列表。 比如,假设 NLS 设置为 Japanese,值将会认为是 "ASCII,JIS,UTF-8,EUC-JP,SJIS"。
文章参考
PHP之mb_convert_encoding使用的更多相关文章
- php mb_convert_encoding的使用
mb_convert_encoding( $str, $encoding1,$encoding2 ): $str,要转换编码的字符串 $encoding1,目标编码,如utf-8,gbk,大小写均可 ...
- iconv vs mb_convert_encoding
iconv 字符串按要求的字符编码来转换 string iconv ( string $in_charset , string $out_charset , string $str ) 将字符串 st ...
- (转)PHP下编码转换函数mb_convert_encoding与iconv的使用说明
之--http://www.jb51.net/article/21451.htm mb_convert_encoding这个函数是用来转换编码的.原来一直对程序编码这一概念不理解,不过现在好像有点开窍 ...
- PHP下编码转换函数mb_convert_encoding与iconv的使用说明
mb_convert_encoding这个函数是用来转换编码的. 不过英文一般不会存在编码问题,只有中文数据才会有这个问题.比如你用Zend Studio或Editplus写程序时,用的是gbk编码, ...
- (转)Call to undefined function mb_convert_encoding()
需要先enable mbstring 扩展库 在 php.ini里将; extension=php_mbstring.dll 前面的 ; 去掉mb_convert_encoding 可以指定多种输入编 ...
- php 字符编码转换函数 iconv mb_convert_encoding比较
在使用PHP处理字符串时,我们经常会碰到字符编码转换的问题,你碰到过iconv转换失败吗? 发现问题时,网上搜了搜,才发现iconv原来有bug ,碰到一些生僻字就会无法转换,当然了配置第二个参数时, ...
- PHP中的mb_convert_encoding与iconv函数介绍
php传输乱码 mb_convert_encoding这个函数是用来转换编码的.原来一直对程序编码这一概念不理解,不过现在好像有点开窍了. 不过英文一般不会存在编码问题,只有中文数据才会有这个问题.比 ...
- php字符编码转换中的iconv与mb_convert_encoding用法
iconv ( 'UTF-8' , 'GBK' , $str ); //将$str字符串 utf-8 编码转换成 gbk: 另外,5.4.0 这个版本起,字符非法时候会返回 FALSE,除非在输出字符 ...
- PHP转码函数mb_convert_encoding() 和iconv()
注意:函数mb_convert_encoding的执行效率比iconv差,且需开启php的mbstring扩展. 一般情况下使用iconv,但此函数在碰到无法转码字符会丢弃,此种情况下可以用mb_co ...
随机推荐
- Android下拉刷新控件android-Ultra-Pull-To-Refresh 使用
一.gitHub地址及介绍 https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh android-Ultra-Pull-To-Refre ...
- jconsole连接远程tomcat
windows(Windows操作系统下的远程监控) 1.编辑文件:在进入到了tomcat中的bin的目录中,进行打开catalina.bat进行编辑文件. 2.添加代码:找到文件中的如下代码 rem ...
- Debug就是Debug,Release就是Release
现在线上发布的时候使用的是增量发布,什么是增量发布呢,就是变化什么,上什么.最近把jenkins搭建上去了,发现每次dll文件大小不一样,已查询发现原来是两个模式debuge模式与release模式搞 ...
- Nutch 问题杂记
1. 如何绕过目标站点的robots.txt限制 多数站点都是只允许百度.google等搜索引擎抓取的,所以会在robots.txt里限制其他爬虫. nutch自然是会遵循robots协议的,但是我们 ...
- [ruby]rubyGem出现ERROR: Could not find a valid gem时的处理方法
场景: 想安装SASS的时候,打开cmd,输入gem install sass的时候却出现了: ERROR: Could not find a valid gem 'sass' (>= 0), ...
- (转)可以一同使用 DISTINCT 和 COUNT 关键词,来计算非重复结果的数目。
点击收看
- AutoMapper在C#中的有趣应用
最近发现了一个比较有趣的东西 AutoMapper,主要将Model转换为DTO,DTO更注重数据,对领域对象进行合理封装,从而不会将领域对象的行为过分暴露给表现层. 先来看一点实例,两个类之间的映射 ...
- byte[] 数组和字符串的转换,与byte[] 数组和int类型的之间的转化
我们先来看看byte bool int ushort 等的定义 首先时byte[]数组与string之间的转换 string 转换位byte[] 数组 string str = "1-1 ...
- 2018-2019-2 20165219《网络对抗技术》Exp4 恶意代码分析
基础问题回答 实验目的 监控系统的运行状态,看有没有可疑的程序在运行 分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工具尽量使用原生指令或sysinternals,systracer套 ...
- SpringMVC常用方法大全
---恢复内容开始--- web.xml: <?xml version="1.0" encoding="UTF-8"?> <web-app x ...