亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP 將自定義數組轉換為特定對象結構

PHP 將自定義數組轉換為特定對象結構

PHP
天涯盡頭無女友 2022-12-23 13:21:00
我有一組數據需要轉換成特定的結構,以便第三方插件可以正確加載它。我能夠實現的當前最接近的陣列是下面這個,從這里我被困住了。數組 [        [            ["item1"],            ["itemname"],            ["item desc"],            ["05\/14\/2014"]        ],        [            ["item12"],            ["itemname2"],            ["item desc2"],            ["05\/14\/2014"]        ]    ]json_encoded[  0 => [0 => "Value1", 1 => "Value2", 2 => "Value3" ],  1 => [0 => "Test", 1 => "Test2", 2 => "Test3" ],  2 => [0 => "Random1", 1 => "Random2", 2 => "Random3" ]]我如何將其轉換為具有這樣的結構,[  {"0":"Value1","1":"Value2", "2":"Value3"},  {"0":"Test", "1":"Test2","2":"Test3"},  {"0":"Random1","1":"Random2","2":"Random3"},]任何想法將不勝感激,非常感謝!
查看完整描述

2 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

您可以通過將所有數組元素轉換為之前的對象來制作表示對象數組的 JSON 字符串json_encode。然而,這將給出字符串鍵,而不是數字鍵(這不是有效的 JSON):


$array = [ 

 0 => [0 => "Value1", 1 => "Value2", 2 => "Value3" ], 

 1 => [0 => "Test", 1 => "Test2", 2 => "Test3" ], 

 2 => [0 => "Random1", 1 => "Random2", 2 => "Random3" ]

];


foreach ($array as &$arr) {

    $arr = (object)$arr;

}

echo json_encode($array, JSON_PRETTY_PRINT);

輸出:


[

    {

        "0": "Value1",

        "1": "Value2",

        "2": "Value3"

    },

    {

        "0": "Test",

        "1": "Test2",

        "2": "Test3"

    },

    {

        "0": "Random1",

        "1": "Random2",

        "2": "Random3"

    }

]


更新


根據對問題的編輯,您似乎正在尋找這個:


$array = [

        [

            ["item1"],

            ["itemname"],

            ["item desc"],

            ["05/14/2014"]

        ],

        [

            ["item12"],

            ["itemname2"],

            ["item desc2"],

            ["05/14/2014"]

        ]

    ];


foreach ($array as &$arr) {

    $arr = (object)array_map(function ($a) { return $a[0]; }, $arr);

}

echo json_encode($array, JSON_PRETTY_PRINT);

輸出:


[

    {

        "0": "item1",

        "1": "itemname",

        "2": "item desc",

        "3": "05\/14\/2014"

    },

    {

        "0": "item12",

        "1": "itemname2",

        "2": "item desc2",

        "3": "05\/14\/2014"

    }

]


查看完整回答
反對 回復 2022-12-23
?
烙印99

TA貢獻1829條經驗 獲得超13個贊

您可以使用  

json_encode($your_array, JSON_FORCE_OBJECT),


查看完整回答
反對 回復 2022-12-23
  • 2 回答
  • 0 關注
  • 156 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號