2015-04-24 112 views
1

当我print_r($arr)类似Array ([0] => Hello [1] => world);输出。PHP将数组转换为JSON问题?

我试着在JSON字符串使用下面的代码转换。

$result['result'] = $arr; 
json_encode($result); 

这导致了这个JSON字符串:

{"result" : { "0" : "hello" , "1" : "world"}} 

预期的结果会是这样:

{ "result" : ["hello" , "world"]} 

我能做些什么,以获得所需的输出?

+0

那真的是你的代码?数组来自哪里?第二个结果看起来像你会得到的。 – Florian

+0

我希望格式像'{“result”:[“hello”,“world”]}'...但没有得到。 yupe它是我的代码 – higunjan

+0

显示你的'$ arr' – 2kai

回答

4
$result['result'] = array_values($arr); 
json_encode($result); 

仅使用这些值。

2

它很简单,请使用如下代码。

$arr = array("0"=>'hello',"1"=>'world'); 
$result['result'] = array_values($arr); 
echo json_encode($result); 

感谢 阿米特

0

需要做的是这样的:

$result['result'] = array_values($arr); 
+0

Array([0] => Hello [1] => world); - >如果这真的是他得到的输出,比$ arr不是一个对象,它是一个数组;) – Florian

+0

好吧,我的错误:) – user3284566