Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在此数组中添加元素?_Php_Arrays - Fatal编程技术网

Php 如何在此数组中添加元素?

Php 如何在此数组中添加元素?,php,arrays,Php,Arrays,下面是代码: $men = array( array('name'=>'NO.1', 'age' => 11), array('name'=>'NO.2', 'age' => 22), array('name'=>'NO.3', 'age' => 33), ); $result = array(); echo '<pre>'; foreach($men as $value){ $result[] = $valu

下面是代码:

$men = array(
    array('name'=>'NO.1', 'age' => 11),
    array('name'=>'NO.2', 'age' => 22),
    array('name'=>'NO.3', 'age' => 33),
);

$result = array();

echo '<pre>';

foreach($men as $value){
    $result[] = $value;
    $result[]['gender'] = 'M';
}
unset($arr1);

var_dump($result);
我该怎么修?任何人都可以告诉我,谢谢。

试试这个:

$men=数组(
数组('name'=>NO.1','age'=>11),
数组('name'=>NO.2','age'=>22),
数组('name'=>NO.3','age'=>33),
);
$result=array();
foreach($key=>$value){
$thisMen=$men[$key];
$thisMen['gender']='M';
$result[]=$thisMen;
}
var_dump($结果);
您还可以通过执行以下操作来避免额外的$thisMen变量

对于($i=0;$i请尝试以下操作:

$men=数组(
数组('name'=>NO.1','age'=>11),
数组('name'=>NO.2','age'=>22),
数组('name'=>NO.3','age'=>33),
);
$result=array();
foreach($key=>$value){
$thisMen=$men[$key];
$thisMen['gender']='M';
$result[]=$thisMen;
}
var_dump($结果);
您还可以通过执行以下操作来避免额外的$thisMen变量

对于($i=0;$i您可以执行以下操作:

<?php
    $men = array(
        array('name'=>'NO.1', 'age' => 11),
        array('name'=>'NO.2', 'age' => 22),
        array('name'=>'NO.3', 'age' => 33),
    );

    $result = array();

    echo '<pre>';

    foreach($men as $value){
        $result[] = array_merge($value, array('gender' => 'M'));
    }
    unset($arr1);
    var_dump($result);
?>
你可以做:

<?php
    $men = array(
        array('name'=>'NO.1', 'age' => 11),
        array('name'=>'NO.2', 'age' => 22),
        array('name'=>'NO.3', 'age' => 33),
    );

    $result = array();

    echo '<pre>';

    foreach($men as $value){
        $result[] = array_merge($value, array('gender' => 'M'));
    }
    unset($arr1);
    var_dump($result);
?>


您应该这样做:

foreach($men as $value){
  $value['gender'] ='M';
  array_push($result, $value);
}

您应该这样做:

foreach($men as $value){
  $value['gender'] ='M';
  array_push($result, $value);
}
而不是

foreach($men as &$value){
  $value['gender'] ='M';
  array_push($result, $value);
}
使用

这将遍历每个内部数组,向每个数组添加
gender
字段,并将它们推送到
$result
数组

使用此方法,原始的
$men
数组保持不变

但是,如果您也希望更改原始数组,则可以在
foreach
循环的
$value
前面添加一个符号(
&
),该循环将使用对内部数组的引用来创建副本。这可以按如下操作

而不是

foreach($men as &$value){
  $value['gender'] ='M';
  array_push($result, $value);
}
使用

这将遍历每个内部数组,向每个数组添加
gender
字段,并将它们推送到
$result
数组

使用此方法,原始的
$men
数组保持不变

但是,如果您也希望更改原始数组,则可以在
foreach
循环的
$value
前面添加一个符号(
&
),该循环将使用对内部数组的引用来创建副本。这可以按如下操作

foreach($men as &$value){
  $value['gender'] ='M';
  array_push($result, $value);
}