使用json_encode获取中文unicode的问题
接收输入的中文是utf-8, 使用json_encode的自动中文转码功能可以获得unicode,可是问题来了,如果从转码后的字符串里获取
unicode呢,请大家帮忙给点思路啊?
例子代码如下
$str_input = "go南京trip"; //待查询的字符串
$str_input = json_encode($str_input);
$str_query = "go\u3537\3642trip";目标字符串
如何从$str_input获取$str_query呢?
回复讨论(解决方案)
什么意思?要把 go\u3537\3642trip 变为 go南京trip ?
http://www.welefen.com/php-unicode-to-utf8.html
,看来我没表达清楚,
我需要的是"go\u3537\3642trip", 即一旦有中文,就将它转化为其对应unicode的字符串,其他字符不变
你是没有说清楚!
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), '"'); //所以这样就得到了
呵呵,unicode代码是瞎编的,抱歉,楼上这位兄弟跟我目前的做法是一样的,但是此时
$str_query是json字符串,{"0":"go\u5357\u4eac\u5730\u94c1trip"}, 我只想要"go\u5357\u4eac\u5730\u94c1trip"。
用json_decode也不行,这时候应该怎么办呢,只能去字符串比较剥出来么?
那你的 $str_input 是数组,不是字符串
你取出值来不就行了?
$str_input = current($str_input);
$str_query = trim(json_encode($str_input), '"');
$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”呢
你为啥这样保存呢?DB以utf-8编码不就OK了?
$str_input = "go南京trip";$str_query = trim(json_encode($str_input), '"'); echo $str_query;得到的是 go\u5357\u4eactrip
你为啥这样保存呢?DB以utf-8编码不就OK了?
数据库是不能更改的,表已经存在了,中文数据是以unicode保存的
$str_input = "go南京trip";$str_query = trim(json_encode($str_input), '"'); echo $str_query;得到的是 go\u5357\u4eactrip
如果我直接echo,浏览器显示是空,直接放到sql句子里面发现是带{ }的json数据格式
贴出来看看!
$str_input = "go南京trip";
$str_query = trim(json_encode($str_input), '"');
echo "unicode: ", $str_query;
?>
chrome里面输出 unicode:
终于搞定了,多谢xuzuning
上一篇: asp.net - 字符串是科学记数法需要变成数字格式写入数据库
下一篇: Thinkphp 入口是
推荐阅读
-
spring boot使用i18n时properties文件中文乱码问题的解决方法
-
在android开发中尽量不要使用中文路径的问题详解
-
.Net获取URL中文参数值的乱码问题解决方法总结
-
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
-
在android开发中尽量不要使用中文路径的问题详解
-
.Net获取URL中文参数值的乱码问题解决方法总结
-
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
-
PHP json_encode中文乱码问题的解决办法
-
ajax获取数据中文乱码问题最简单的完美解决方案
-
php中json_encode处理gbk与gb2312中文乱码问题的解决方法