문제

i try to make a json output like this:

{
    "ergebnis": {
        "kurse": [
            "8b",
            "10m"
        ],
        "test": [
            "abc",
            "dss"
        ]
    }
}

but it should looks like :

"ergebnis": [
        {
            "kurse": 8b,
            "test": "abc",

        },
        {
            "kurse": 10m,
            "test": "dss",

        }
    ]
}

This is my code:

$kurse = array();
$kurse[0] = "8b";
$kurse[1] = "10m";
$test = array();
$test[0] = "abc";
$test[1] = "dss";

$ausgabe = array(
    'ergebnis' =>
        array('kurse' => $kurse,'test' => $test)

    );

What do I wrong ?

Thank you in advance :)

도움이 되었습니까?

해결책

You are setting the entire $kurse array as the 'kurse' value. If you want the 2nd output, then you need to format your PHP array correctly. As shown, your PHP code creates the JSON shown in the 1st example.

If you want the 2nd example, then you need to do something like this:

$ausgabe = array_map(function($a, $b){
    return array(
        'kurse' => $a,
        'test' => $b
    );
}, $kurse, $test);

다른 팁

Use json_encode

echo json_encode($ausgabe);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top