PHP add elements to multidimensional array with array_push(PHP 使用 array_push 向多维数组添加元素)
问题描述
我有一个多维数组 $md_array,我想向来自从表中读取数据的循环的子数组 recipe_type 和美食添加更多元素.
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.
在循环中,我为每一行创建一个新表 $newdata:
In the loop, I create a new table $newdata for each row:
$newdata =  array (
          'wpseo_title' => 'test',
          'wpseo_desc' => 'test',
          'wpseo_metakey' => 'test'
        );
然后,使用 array_push() 我需要将 $newdata 数组附加到以下多维数组:
and then, using array_push() I need to append the $newdata arrays to the following multidimensional array:
$md_array= array (
     'recipe_type' => 
      array (
        18 => 
        array (
          'wpseo_title' => 'Salads',
          'wpseo_desc' => 'Hundreads of recipes for Salads',
          'wpseo_metakey' => ''
        ),
        19 => 
        array (
          'wpseo_title' => 'Main dishes',
          'wpseo_desc' => 'Hundreads of recipes for Main dishes',
          'wpseo_metakey' => ''
        )
      ),
     'cuisine' => 
      array (
        22 => 
        array (
          'wpseo_title' => 'Italian',
          'wpseo_desc' => 'Secrets from Sicily in a click',
          'wpseo_metakey' => ''
        ),
        23 => 
        array (
          'wpseo_title' => 'Chinese',
          'wpseo_desc' => 'Oriental dishes were never this easy to make',
          'wpseo_metakey' => ''
        ),
        24 => 
        array (
          'wpseo_title' => 'Greek',
          'wpseo_desc' => 'Traditional Greek flavors in easy to make recipies',
          'wpseo_metakey' => ''
        )
      ) 
    );
使用array_push 向recipe_type 数组添加新元素(数组)的语法是什么?我永远无法理解多维数组,我有点困惑.
Whats the syntax for adding a new element (array) to the recipe_type array with array_push? I could never get my head around multidimensional arrays and I'm a bit confused.
推荐答案
如果你想在关联数组中以递增顺序添加数据,你可以这样做:
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 通常用在有顺序索引的数组中: $arr[0] , $ar[1] .. 不能直接在关联数组中使用.但是由于您的子数组具有这种索引,您仍然可以像这样使用它
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);
这篇关于PHP 使用 array_push 向多维数组添加元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:PHP 使用 array_push 向多维数组添加元素
 
				
         
 
            
        基础教程推荐
- Web 服务器如何处理请求? 2021-01-01
- Yii2 - 在运行时设置邮件传输参数 2022-01-01
- PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
- 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
- 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
- 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
- php中的foreach复选框POST 2021-01-01
- php中的PDF导出 2022-01-01
- 将变量从树枝传递给 js 2022-01-01
- php 7.4 在写入变量中的 Twig 问题 2022-01-01
 
    	 
    	 
    	 
    	 
    	 
    	 
    	 
    	 
				 
				 
				 
				