猿问

将php数组转换成json的问题

<?php
$a = [
    'name',
    'age'
];
var_dump( json_encode($a));

结果为 '["name","age"]'
这是一个json数据是没问题的,但是返回的是一个json集合而我需要的是json对象,我期待的是下面的结果

'{"name","age"}'、

我现在的解决方法是更改一下自己的代码如下

$a = [
    'name' => 1,
    'age' => 1
];
var_dump( json_encode($a));

也就是把数组变成键值对形式,每一个键都有一个相同的值1,这个1是没用的,得到的结果如下
'{"name":1,"age":1}'
这样是能满足我的需求的,但是个人感觉这样有点太low了,不知道有没有好的办法

aluckdog
浏览 455回答 2
2回答

紫衣仙女

'{"name","age"}'这种形式的东西不是json,如果是对象,那就必然是键值对,而数组在json中就是用[]来表示的

月关宝盒

是返回给前台使用还是后台使用,前台使用就不需要操作了,直接用 json_encode($a) 就行了如果是后台自己使用json对象可以使用 json_decode(json_encode($a)) 就是一个json对象了
随时随地看视频慕课网APP
我要回答