PHP JSON 编码不起作用

Jos*_*ase 2 php arrays json encode var-dump

这是我想要编码为 JSON 的数组的 var_dump:

array(3) { 
    [0]=> array(2) { 
        ["From"]=> string(14) "08 August 2013"
        ["To"]=> string(14) "21 August 2013"
    }
    [1]=> array(2) {
        ["From"]=> string(14) "11 August 2013"
        ["To"]=> string(14) "21 August 2013"
    }
    [2]=> array(2) { 
        ["From"]=> string(14) "12 August 2013" 
        ["To"]=> string(14) "01 August 2013" 
    } 
}
Run Code Online (Sandbox Code Playgroud)

当我对其进行编码时,输出如下所示:

[
 {"From":"08 August 2013","To":"21 August 2013"},
 {"From":"11 August 2013","To":"21 August 2013"},
 {"From":"12 August 2013","To":"01 August 2013"}
]
Run Code Online (Sandbox Code Playgroud)

但我希望它是这样的:

{
 0:{"From":"08 August 2013","To":"21 August 2013"}, 
 1:{"From":"11 August 2013","To":"21 August 2013"}, 
 2:{"From":"12 August 2013","To":"01 August 2013"}
}
Run Code Online (Sandbox Code Playgroud)

这是可能的,因为我以前做过,但现在使用相同的代码将无法工作

小智 6

很多时候,当我们的数组内容未编码时,就会发生这种情况。一般我们使用UTF-8编码。

所以,要解决这个问题只需添加

mysqli_set_charset($con, 'utf8');

就在连接之后。