我有一个json字符串的问题,我用json_encode生成。 这是输入:
stdClass Object
(
[titles] => stdClass Object
(
[nl] => test
[en] => test
)
[contents] => stdClass Object
(
[nl] => <p>\n test</p>\n
[en] => <p>\n test</p>\n
)
[languages] => stdClass Object
(
[0] => nl
[1] => en
)
)
我使用这个SQL语句把它放在我的数据库中:
INSERT INTO `pages`
(`title`, `content`, `lang`)
VALUES('{"nl":"test","en":"test"}', '{"nl":"<p>\\n\ttest<\/p>\\n","en":"<p>\\n\ttest<\/p>\\n"}', '{"0":"nl","1":"en"}')
据我所知,没有错,它都存储在数据库中,没有问题。
然后我尝试获取输出我得到的内容:
{"nl":"<p>n test</p>n","en":"<p>n test</p>n"}
导致:
(
[id] => 10
[title] => stdClass Object
(
[nl] => test
[en] => test
)
[content] =>
[lang] => stdClass Object
(
[0] => nl
[1] => en
)
[created] => 2012-10-24 11:49:52
)
所以,我的json字符串无效。 这怎么可能? 我真的不知道我做错了什么。
答案 0 :(得分:0)
啊!你是对的!愚蠢的我没有想到这一点,我总是为我的SELECT
语句使用一个函数,在这段代码中我使用的是stripslashes()
,这显然使我的json字符串无效,因为有一些{{1}其中的东西。
谢谢!