如何将多维键值转换为单个数组?

时间:2019-07-12 10:14:11

标签: php arrays multidimensional-array

我有以下数组:

{
        "image": "/b/l/black_10.jpg"
    },
    {
        "url_key": "printing-products"
    },
    {
        "position_back": "251,252"
    },
}

我需要将以上所有数组合并为一个数组,如下所示。

{
        "image": "/b/l/black_10.jpg"

        "url_key": "printing-products"

        "position_back": "251,252"

}

我需要将其转换为单个数组。我使用了以下代码。

$flat = call_user_func_array('array_merge', $attr_code);

但是我无法达到预期的输出。

1 个答案:

答案 0 :(得分:0)

它看起来像json数据。但无效。

首先生效。您可以在https://jsonlint.com/

上进行测试

之后,使用json_decode转换为数组。

您可以使用array_walk_recursive将多维键值转换为单个数组。

   <?php
//Using json_decode convert json into array
$array = json_decode($json, true);

array_walk_recursive($array, function($item, $key) use (&$final_array){$final_array[$key]=$item;});


/*use json_encode for json format
   echo json_encode($final_array);
 */

//For array you can use $final_array
echo "<pre>";
print_r($final_array);

?>

DEMO