我遇到了这个问题。
我一直试图在array
中使用JSON
保存MySQL
,但我无法检索它。
我这样做:
mysql_query('SET CHARACTER SET utf8');
mysql_query("UPDATE `mydbase` SET `arrayfield`='".json_encode($_POST['arrayvar'])."' WHERE `id` = ".$id ) or die(mysql_error());
显然,它可以保存它,
要获取我运行的信息:
$result=mysql_query("SELECT `arrayfield` FROM `mydbase` ORDER BY `id` DESC LIMIT 1");
while ($wy=mysql_fetch_assoc($result)) {
$varwitharray =$wy['arrayfield'];
}
如果我运行echo
echo $varwitharray
,我会这样做:
{"1":["1","hi","all","250.00","250.00"],"2":["1","bye","me","50.00","50.00"]}
如果我运行VAR_DUMP
var_dump($varwitharray)
,我会这样做:
string(79) "{"1":["1","hi","all","250.00","250.00"],"2":["1","bye","me","50.00","50.00"]}
但是在我运行 json_decode
$varwitharray = json_decode($varwitharray, true);
我 NULL
做任何事情
已保存在MySQL
文件类型text
中,其中包含排序utf8_general_ci
我做错了什么?
PS。我已经阅读了很多关于类似论点的其他帖子,但非为我工作