PHP json_encode 文本形式数字下标数组导致下标丢失

$arr = array(
    '0'=>'a','1'=>'b','2'=>'c','3'=>'d'
);
echo json_encode($arr);

但是结果是

["a","b","c","d"]

需求是要返回JSON对象,是这样似的

{"0":"a","1":"b","2":"c","3":"d"}

先转换为对象在编码

$arr = array(
    '0'=>'a','1'=>'b','2'=>'c','3'=>'d'
);
echo json_encode((object)$arr);

输出结果

{"0":"a","1":"b","2":"c","3":"d"}
原文地址:https://www.cnblogs.com/lbnnbs/p/8540240.html