php 数组转换字符串函数, 我用thinkphp ,json_encode保存中文,反斜杠消失了
php 数组转换字符串函数, 我用thinkphp ,json_encode保存中文,反斜杠消失了
原本是这个
[{"title":"\u5173\u6ce8\u65f6\u56de\u590d","url":"\/index.php?g=User****"}]
结果变成这个了
[{"title":"u5173u6ce8u65f6u56deu590d","url":"\/index.php?g=User****"}]
就是中文,用json_decode 处理,保存到数据库就没有反斜杠了,
php版本 5.2, apache 2.2
我记得有一个可以保存变量类型 的, 数组转换字符串, 忘记叫什么了
------解决思路----------------------是Thinkphp的问题?
直接用php的json_encode不会没有反斜杠的。
echo '';
$arr = array(
array(
'title' => '关注时回复',
'url' => '/index.php?g=User****'
)
);
$str = json_encode($arr); //
echo $str.'
';
echo '';
print_r(json_decode($str,true));
echo '
';
[{"title":"\u5173\u6ce8\u65f6\u56de\u590d","url":"\/index.php?g=User****"}]
Array
(
[0] => Array
(
[title] => 关注时回复
[url] => /index.php?g=User****
)
)
------解决思路----------------------应该是环境的原因,斜杠被处理掉。
------解决思路----------------------你看下有没有对数据进行 stripslashes 之类的处理,在保存到数据库之前
------解决思路----------------------接点分用用
------解决思路----------------------save 是保存到数据库,那么你的 "\u5173\u6ce8\u65f6\u56de\u590d" 中的 \ 不需要转义吗?TP 会替你做?