资讯专栏INFORMATION COLUMN

php获取编码方式及改变编码方法

qylost / 1563人阅读

摘要:场景说明此变量存储的为通过等方式获取到的字符串,拿到后浏览器为乱码实际为,转化编码格式后为正常数据,拿到中也为,但是此码就是为得到目前编码转化编码字不如图是最常用的表示方法。浏览器编码表上的,通常都是指表示法。

抓xx页面的时候,虽然返回数据为json格式的,但是是非utf-8的,这样json_decode的时候返回的是null,因为json只是支持UTF-8/ASCII,应该也有其他转换方法,这里仅记录一下。

  

      $info="
         场景说明:此变量存储的为:通过xx等方式获取到的字符串,
         拿到后浏览器为乱码(实际为gb2312),转化编码格式后为正常数据,
         拿到`bejson.com`中也为valid json,
         但是json_decode此码就是为null
         ";
         
         // 得到目前编码
        $encode=mb_detect_encoding($info,array(
        "ASCII","UTF8","GB2312","GBK","BIG5"
        )); 
    
        echo $encode."
";
    
        $result=json_decode($info);
        var_dump($result);
        
        // 转化编码
        $trans=mb_convert_encoding($info,"UTF-8","gb2312");
        
        $encode = mb_detect_encoding($trans, array(
        "ASCII","UTF-8","GB2312","GBK","BIG5")); 
        echo $encode;
           
        $obj=json_decode(($trans));
        var_dump($obj);
       

字不如图~

PS:
EUC-CN EUC-CN是GB2312最常用的表示方法。浏览器编码表上的“GB2312”,通常都是指“EUC-CN”表示法。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31934.html

相关文章

  • PHP面试之面向对象(1)

    摘要:二面向对象有什么特征面向对象的主要特征有抽象继承封装和多态。析构函数析构函数是在引入的,它的作用与调用时机和构造函数刚好相反,它在对象被销毁时自动执行。 PHP面试专栏正式起更,每周一、三、五更新,提供最好最优质的PHP面试内容。PHP中面向对象常考的知识点有以下7点,我将会从以下几点进行详细介绍说明,帮助你更好的应对PHP面试常考的面向对象相关的知识点和考题。整个面向对象文章的结构涉...

    phodal 评论0 收藏0
  • PHP 开发者如何做代码审查?

    摘要:我们做代码审计之前选好工具也是十分必要的。一审计工具介绍代码审计系统功能介绍是一款基于开发的针对代码安全审计的软件。自定义审计规则。黑盒敏感信息泄露一键审计。挖掘这种漏洞主要是检查是否使用了,搜索和。 GitChat 作者:汤青松原文:PHP 开发者如何做代码审查?关注微信公众号:「GitChat 技术杂谈」 一本正经的讲技术 【不要错过文末彩蛋】 前言 工欲善其事,必先利其器。我们做...

    Achilles 评论0 收藏0
  • PHP中URL中特殊字符引起的问题(+,,=)

    摘要:中中特殊字符引起的问题前言,在做某个渠道的过程中,发现一个验签错误的问题。对已编码的字符串进行解码返回字符串,此字符串中百分号后跟两位十六进制数的序列都将被替换成原义字符。 PHP中URL中特殊字符引起的问题(+,,=) 前言,在做某个渠道的过程中,发现一个验签错误的问题。但是,当时验签在两个地方表现不一致,同一套处理方法,想到了这是因为两个地方请求方式是不同的一个get方法另外一个自...

    RancherLabs 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<