• 技术文章 >后端开发 >php教程

    php内部字符串编码转换函数mb_convert_encoding使用方法引见

    2016-06-13 13:25:29原创434

    php内部字符串编码转换函数mb_convert_encoding使用方法介绍
    http://hi.baidu.com/get52/blog/item/56f4d80336bf8ee208fa9307.html


    mb_convert_encoding 函数 为php内部多字节字符串编码转换函数,可以在有需要的场合进行编码转换,如:解决在GB2312编码环境下使用Ajax产生的中文字符乱码问题。支持几乎所有编码,版本支持 PHP 4 >= 4.0.6、PHP 5。
    函数原型:
    /**
    * 多字节字符串编码转换函数
    *
    * @param string str 需要进行编码转换的字符串
    * @param string to_encoding 指定转换为某种编码,如:gb2312、gbk、utf-8等
    * @param mixed from_encoding 混合指定原来字串的编码,如:同时指定 JIS, eucjp-win, sjis-win 混合编码
    * @return string
    string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )

    使用举例:
    1、把 GBK 编码字串转换成 UTF-8 编码字串
    header("content-Type: text/html; charset=Utf-8");
    echo mb_convert_encoding("你是我的好朋友", "UTF-8", "GBK");
    ?>
    2、把 UTF-8 编码字串转换成 GB2312 编码字串
    // 注意将此文件存盘成 utf-8 编码格式文件再测试
    header("content-Type: text/html; charset=gb2312");
    echo mb_convert_encoding("你是我的好朋友", "gb312", "utf-8");
    ?>

    3、对整个页面进行转换

    该方法适用所有编码环境。把前128个字符以外(显示字符)的字符集都用 NCR (Numeric character reference,如“汉字”将转换成“汉字”这种形式)来表示,这样的编码在任意编码环境下页面都能正常显示。

    方法是在php文件的头部加上下面三行代码:
    mb_internal_encoding("gb2312"); // 这里的gb2312是你网站原来的编码
    mb_http_output("HTML-ENTITIES");
    ob_start('mb_output_handler');

    不过,使用mb_convert_encoding 函数需启用PHP 的mbstring (multi-byte string)扩展。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇: 用PHP能不能失去网站的容量 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解PHP实现职责链设计模式(附代码示例)• php实现通过JSON RPC与go通讯(附代码)• 浅析怎么使用PHP做异步爬取数据• PHP8.3要有新函数了!(json_validate函数说明)• 设计API接口时,要注意这些地方!
    1/1

    PHP中文网