什么意思?要把 go\u3537\3642trip 变为 go南京trip ?

解决方案 »

  1.   

    http://www.welefen.com/php-unicode-to-utf8.html
      

  2.   

    ,看来我没表达清楚,我需要的是"go\u3537\3642trip", 即一旦有中文,就将它转化为其对应unicode的字符串,其他字符不变
      

  3.   

    你是没有说清楚!
    1、\u3537\u3456 怎么会是 中国 呢?
    你是怎么放进去的?请说一下
    2、$str_input = "go南京trip"; //一定要是 utf-8 的
    $str_input = iconv('gbk', 'utf-8', $str_input); //不然要转化成 utf-8 的
    echo json_encode($str_input);//得到 "go\u5357\u4eactrip"$str_query = trim(json_encode($str_input), '"'); //所以这样就得到了
      

  4.   

    呵呵,unicode代码是瞎编的,抱歉,楼上这位兄弟跟我目前的做法是一样的,但是此时
    $str_query是json字符串,{"0":"go\u5357\u4eac\u5730\u94c1trip"}, 我只想要"go\u5357\u4eac\u5730\u94c1trip"。用json_decode也不行,这时候应该怎么办呢,只能去字符串比较剥出来么?
      

  5.   

    那你的 $str_input 是数组,不是字符串
    你取出值来不就行了?
    $str_input = current($str_input);
    $str_query = trim(json_encode($str_input), '"');
      

  6.   

    $str_input = "go南京trip";
    $str_query = trim(json_encode($str_input), '"'); echo $str_query; 
    //得到{"0":"go\u5357\u4eac\u5730\u94c1trip"}怎么才能从json结构里{"0":"go\u5357\u4eac\u5730\u94c1trip"}获得“go\u5357\u4eac\u5730\u94c1trip”呢
      

  7.   

    你为啥这样保存呢?DB以utf-8编码不就OK了?
      

  8.   

    $str_input = "go南京trip";
    $str_query = trim(json_encode($str_input), '"'); echo $str_query; 
    得到的是 go\u5357\u4eactrip
      

  9.   


    数据库是不能更改的,表已经存在了,中文数据是以unicode保存的
      

  10.   


    如果我直接echo,浏览器显示是空,直接放到sql句子里面发现是带{ }的json数据格式
      

  11.   

    <?php
    $str_input = "go南京trip";
    $str_query = trim(json_encode($str_input), '"');echo "unicode: ", $str_query;?>chrome里面输出  unicode: