如何格式化将从PHP发送回javascript的json文件?

I want to format my json to look something like:

"items": [{
        "item1": "text"
        'item2': "text",
        'item3': "text",
        'item4': number,
        'item5': number,
        'item6': "text",
        'item7': "text"
        },
        "item1": "text"
        'item2': "text",
        'item3': "text",
        'item4': number,
        'item5': number,
        'item6': "text",
        'item7': "text"
}] etc...

The problem is that I can only figure out how to have the array that I encode as an indexed array, which leads into an associative array.

I tried the code as follows in a loop obviously to get more than one row:

$final_return['items'] = array
    (
        'item1' => $item1,
        'item2' => $item2,
        'item3' => $item3,
        'item4' => $item4,
        'item5' => $item5,
        'item6' => $item6,
        'item7' => $item7
    );
echo json_encode($final_return);

But this returns only the last set of items thrown into the array. I have got it working with an indexed version, but I want the items label in front of the whole collection.

When you are doing $final_return['items'] = array(...) you are assigning a new value on the key 'items' of $final_return array.

What you want is an $final_return['items'][] = array(....) and then again to push a new array into that array.

You need a array inside of array to achieve that.

Try This:

$final_return['items'] = array(
    array
    (
        'item1' => '1',
        'item2' => '2',
        'item3' => '3',
        'item4' => '4',
        'item5' => '5',
        'item6' => '6',
        'item7' => '7'
    ),
    array
    (
        'item1' => '1',
        'item2' => '2',
        'item3' => '3',
        'item4' => '4',
        'item5' => '5',
        'item6' => '6',
        'item7' => '7'
    )
);
echo json_encode($final_return);

You can use array_push() to more arrays to the array

$data = array
    (
        'item1' => '1',
        'item2' => '2',
        'item3' => '3',
        'item4' => '4',
        'item5' => '5',
        'item6' => '6',
        'item7' => '7'
    );
$final_return['items'] = array();

array_push($final_return['items'], $data, $data);
echo json_encode($final_return);