PHP add elements to multidimensional array with array_push

前端 未结 3 489
南旧
南旧 2020-11-28 23:13

I have a multidimensional array $md_array and I want to add more elements to the sub-arrays recipe_type and cuisine coming from a loop that reads data from a table.

相关标签:
3条回答
  • 2020-11-28 23:41

    if you want to add the data in the increment order inside your associative array you can do this:

    $newdata =  array (
          'wpseo_title' => 'test',
          'wpseo_desc' => 'test',
          'wpseo_metakey' => 'test'
        );
    
    // for recipe
    
    $md_array["recipe_type"][] = $newdata;
    
    //for cuisine
    
     $md_array["cuisine"][] = $newdata;
    

    this will get added to the recipe or cuisine depending on what was the last index.

    Array push is usually used in the array when you have sequential index: $arr[0] , $ar[1].. you cannot use it in associative array directly. But since your sub array is had this kind of index you can still use it like this

    array_push($md_array["cuisine"],$newdata);
    
    0 讨论(0)
  • 2020-11-28 23:46

    I know the topic is old, but I just fell on it after a google search so... here is another solution:

    $array_merged = array_merge($array_going_first, $array_going_second);
    

    This one seems pretty clean to me, it works just fine!

    0 讨论(0)
  • 2020-11-28 23:57

    As in the multi-dimensional array an entry is another array, specify the index of that value to array_push:

    array_push($md_array['recipe_type'], $newdata);
    
    0 讨论(0)
提交回复
热议问题