如何获取从 laravel foreach 返回的数组而不是 json 数组?

我正在尝试根据输入值使用 laravel foreach 返回一组值。这是我的预期输出


    [

[

    "number": 2567046807891,

    "message": "THis is a test",

    "sender": "Oasis Agrib"

],

[

    "number": 256782248927,

    "message": "THis is a test",

    "sender": "Oasis Agrib"

]

]


但我得到了这个


[

{

"number": 2567046807891,

"message": "THis is a test",

"sender": "Oasis Agrib"

},

{

"number": 256782248927,

"message": "THis is a test",

"sender": "Oasis Agrib"

}

]

这是我尝试过的


$batch = array();

                foreach($data as $v){

                    $phone_number = $v['phonenumber'];

                    $batch[] = array('number' => $phone_number,'message' => $message, 'sender' => $sender);

                }

                return $batch;

如何最好地解决这种情况


呼啦一阵风
浏览 230回答 2
2回答

qq_遁去的一_1

带大括号的预期结果是正确的。数组(也称为列表)[]包含元素并且不能具有属性/键:[    [], // another array/list    {}, //object    "", //string]因此,为了使用键/值对,您必须使用一个对象:{    "number": 256782248927,    "message": "THis is a test",    "sender": "Oasis Agrib"}将多个对象合并到一个列表中,您最终会得到您已经发布的结果:[    {        "number": 2567046807891,        "message": "THis is a test",        "sender": "Oasis Agrib"    },    {        "number": 256782248927,        "message": "THis is a test",        "sender": "Oasis Agrib"    }]请注意,外部 API 不会处理您的“预期”结果,因为语法无效,它应该返回错误或丢弃无效的 JSON。

肥皂起泡泡

如果要将 JSON 结构用作 PHP 数组,可以使用该函数json_decode()并将第二个标志设置为true$json_string = '[    {        "number": 2567046807891,        "message": "THis is a test",        "sender": "Oasis Agrib"    },    {        "number": 256782248927,        "message": "THis is a test",        "sender": "Oasis Agrib"    }]' ;  $array = json_decode($json_string, true);您现在可以将其$array用作经典的 PHP 关联数组。
打开App,查看更多内容
随时随地看视频慕课网APP